Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: soyloqbuskas en 26 Septiembre 2012, 02:02 am



Título: Problema de asignacion (diferentes tipos)
Publicado por: soyloqbuskas en 26 Septiembre 2012, 02:02 am
¡Buenas a todos!

Tengo un problemilla con una asignacion.
Código
  1. char * pathGroup[8]; // variable global
  2.  
  3. int funcion(char * paths[8]){
  4.  
  5.     pathGroup=paths; // el error esta aqui.
  6.  
  7.     // resto del codigo.................
  8.  
  9.     return 0;
  10. }
  11.  

Citar
Y el error reportado por gcc es:
     incompatible types when assigning to type ‘char *[8]’ from type ‘char **

¿Como puedo hacer esa asignacion correctamente?


Título: Re: Problema de asignacion (diferentes tipos)
Publicado por: Javier235 en 26 Septiembre 2012, 04:59 am
¿Qué es lo que vos querés hacer en realidad? o podés mostrar algo más de código, el planteo del problema a resolver... algo xD tenés un arreglo de "char *" a una variable le asignás paths[0]...



Título: Re: Problema de asignacion (diferentes tipos)
Publicado por: STANHMAL en 26 Septiembre 2012, 05:15 am
Hola que tal,

1. No uses variables globales, son mala practica de programación.

2. Para poder realizar eso necesitas es asignarle posición por posición, es decir, necesitar hacer dicha asignación en un ciclo, puede ser un for.


$4!u2


Título: Re: Problema de asignacion (diferentes tipos)
Publicado por: ecfisa en 28 Septiembre 2012, 04:45 am
Hola soyloqbuskas.

Otra forma de asignar la cadena enviada como argumento puede ser usando strncpy:
Código
  1. ...
  2. #include <string.h>
  3.  
  4. ...
  5.  
  6. int funcion(char *paths[8]){
  7.   strncpy(pathGroup, paths, 8);
  8. ...
  9.  

Saludos.


Título: Re: Problema de asignacion (diferentes tipos)
Publicado por: anonimo12121 en 28 Septiembre 2012, 16:21 pm
creo que quiere crear una matriz de 2 con punteros
si no es así

prueba esto
Código
  1. type name(char *)
  2. char *pc;
  3. pc= new char[10];
así puedes usar pc en el paramentro de tu función