Ver Mensaje Individual
  #5 (permalink)  
Antiguo 11/09/2009, 15:51
JuanLVBR
 
Fecha de Ingreso: septiembre-2009
Ubicación: Burgos
Mensajes: 28
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Modificar el valor de una variable

A ciegas yo diría varias cosas.
1º) Lo que bien ha dicho Anubis, aunque en estos casos, al estar engoblado en la misma función y hacer la llamada con gets( ), el tamaño del vector no importará y el resultado será el correcto si el resto estuviese bien, pero te va a dar 2 warnings y bien fundamentados en mi opinión... Para eso no declares tan siquiera.
De hecho si cambiamos la línea número 5 del código de haidion por:
char a[0], b[0];
El programa funcionará "igual de bien" que sin la modificación.
2º) Te equivocas en el funcionamiento de strcpy, te recomiendo que cuando no sepas usar una función busques aquí en "C con Clase" (no me está permitido poner links) o te leas la librería de la misma.

Te explico básicamente, strcpy(cad1, cad2) copia cad2 en cad1.
Tu sentencia es "strcpy(b, ("Hola %s \n",a));" La librería string.h se inventó justo por esto, porque igual que no puedes poner a > b, a = b y demás comparadores lógicos entre cadenas, no las puedes concatenar como quieras (y menos aun de ese modo). Bien puedes hacerlo con un bucle si no quieres añadir la librería o bien con el código de haidion.