Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: micro_pepe en 19 de Octubre de 2019, 12:51:36
Título: Pasar Array como parámetro en funciones anidadas
Publicado por: micro_pepe en 19 de Octubre de 2019, 12:51:36
Necesito parar un Array a una función y dentro de esta pasárselo a otra, estoy haciendo lo siguiente:
Código: C
void main(){
unsignedchar d[5];
funcion1(d);
}
Código: C
void funcion1(unsignedchar* a){
funcion2(a);
}
Código: C
void funcion2(unsignedchar* b){
for(int i=0;i<5;i++){
lcdprint(*(b+i));
}
}
No sé si es lo correcto, pero me está dando problemas. Las funciones las tengo en un fichero, si las defino en el mismo fichero del main, funciona correctamente.
Gracias.
Título: Re:Pasar Array como parámetro en funciones anidadas
Publicado por: KILLERJC en 19 de Octubre de 2019, 12:56:56
Citar
No sé si es lo correcto, pero me está dando problemas. Las funciones las tengo en un fichero, si las defino en el mismo fichero del main, funciona correctamente.
Estonces esta bien... El problema es como lo implementas con los demas archivos.
Ejemplo (sin usar .h para hacerlo mas simple)
main.c
Código: C
char d[]="hola";
externvoid funcion1(unsignedchar*);
void main(void){
funcion1(d);
while(1){
}
}
archivo1.c
Código: C
externvoid funcion2(unsignedchar*);
void funcion1(unsignedchar* a){
funcion2(a);
}
archivo2.c
Código: C
void funcion2(unsignedchar* b){
char a;
for(int i=0;i<5;i++){
a=(*(b+i));
}
}
Y funciona correctamente... No use los .h para no poner 3 archivos mas... es lo unico.
Título: Re:Pasar Array como parámetro en funciones anidadas
Publicado por: micro_pepe en 19 de Octubre de 2019, 20:46:43