hola a todos.
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);
printf("\n en la funcion main el valor de la variable a es:\n%s de la varible b es: \n %s", a
, b
); }
int prueba (char a[10], char *b)
{
char mensaje[30]="hola como estas";
b = mensaje;
printf("introduce un texto \n");
printf("el valor de la variable a es:\n %s \n varibale b es :\n %s", a
, b
); }