y tenía ciertas dudas sobre los punteros y los char como por ejemplo:
Código:
en este caso cad1 es un vector de char con los valores 'h','o',l,'a','\0'char cad1[]="hola";
pero luego no puedes hacer esto
Código:
te dice que no le puedes asignar ese valor tipos incompatibles.char cad1[4]; cad1="hola"
Pero te deja usar un método
Código:
por lo que yo creía "hola" representaba un vector de caracteres pero parece que no por que si no me dejaría darle este valor directamentestrcpy( cad1, "hola");
No obstante usando char* si te deja lo cual me extraña por que si "hola" no es un vector de caracteres entonces a que apuntaría la variable
Otra duda es con los Punteros a Punteros de char se supone que se puede crear un vector de char usando char **vector
pero no le encuentro la lógica osea vector apunta a un puntero que apunta a un vector de caracteres (ej "saludo1")pero como apuntas al siguiente vector de caracteres luego ej "saludo2"?
Intente recorrer un char ** pero no me funcionó
EJ
Código:
Una ultima duda es que creo que no se puede usar scanf() con un puntero a char si no que tienes que hacerlo con un vector de char de tamaño fijo lo cual lo veo un desperdicio por que tu no sabes cuantas palabras puede escribir el usuario.void mostrarChar(char **matriz) { int f; for (f=0;f<7;f++) { printf("%s\n",matriz[f][0]); } } int main(int argc, char** argv) { char **matriz={"Lunes","Martes","Miercoles","Jueves","Viernes","Sabado","Domingo"}; mostrarChar(matriz); return (EXIT_SUCCESS); }
Bueno estos son los problemas mas complicados que estoy teniendo con C
quizá este muy acostumbrado a Java con su String etc XD
Me harías un gran favor si me pudieses aclarar un poco este cacao que tengo
Un saludo Y gracias de ante mano