bueno esta programando y me encontre con esto y no se a que se deba si alguien me puede explicar.
es que me di cuentas que si declaro un puntero global asi:
char a[20];
y lo imprimo tanto en una funcion como en la funcion principal main se matiene su valor.
pero su declaro un puntero asi:
char *b;
el valor solo se matiene en la funcion y cuando imprimo su valor en main aparece sin valor (NULL).
Mi pregunta es ¿por que en uno si se queda su valor y en el otro no?
Código C:
Ver original
#include <stdio.h> char a[10], *b; int prueba (char a[10], char *b); int main () { prueba(a, b); } int prueba (char a[10], char *b) { char mensaje[30]="hola como estas"; b = mensaje; }