Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:
Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro

Identificar elementos de un array

Preguntas y respuestas sobre el lenguaje de programacion C/C++

Identificar elementos de un array

Notapor ferri_mar el Vie Jun 01, 2007 6:56 am

Hola!!
Necesito vuestra ayuda!!
Tengo un fichero de datos, cuya estructura es la siguiente:

12 23 12 aa
12 30 18 aa

Pretendo leer cada linea e identificar cada uno de sus elementos por separado, es decir: num1,num2,num3,a1,a2.

Este es mi programa, con el que no sale bien:..podeis ayudarme??

int main()
{
FILE *fp;
char registro[100];
int num1,num2,num3;
char a[6];

fp=fopen("c:\\datos.txt","r");
while(fgets(registro,100,fp)!=NULL)
{
sscanf(registro,"%d %d %d %s",&num1,&num2,&num3,&a);


printf("%s %s",a[0],a[1]);
}

Muchisimas gracias!!!
ferri_mar
Novato
Novato
 
Mensajes: 6
Registrado: Vie Sep 29, 2006 4:50 am

&a1,&a2

Notapor atp el Vie Jun 01, 2007 7:04 am

no he podido comprobar el código, pero has probado a poner los siguientes cambios:

char a1,a2;

fp=fopen("c:\\datos.txt","r");
while(fgets(registro,100,fp)!=NULL)
{
sscanf(registro,"%d %d %d %s",&num1,&num2,&num3,&a1,&a2);


Saludos,
Antonio.
atp
Usuario Muy Activo
Usuario Muy Activo
 
Mensajes: 126
Registrado: Mar Ene 03, 2006 3:52 pm

Notapor ferri_mar el Vie Jun 01, 2007 7:21 am

Si,tabien lo he probado y nada...
En realidad yo habia probado:

char a1,a2;
sscanf(registro,"%d %d %d %s %s",&num1,&num2,&num3,&a1,&a2);
y tampoco salia nada, porque identifica como a1 aa y a2 lo deja vacio.

Acabo de probar tu codigo, y nada tampoco!!
un saludo
ferri_mar
Novato
Novato
 
Mensajes: 6
Registrado: Vie Sep 29, 2006 4:50 am

a ver ahora

Notapor atp el Vie Jun 01, 2007 7:26 am

creo que me eqivoque, preuba esto, que lea dos caracteres, no dos string


char a1, a2;
sscanf(registro,"%d %d %d %c %c",&num1,&num2,&num3,&a1,&a2);
atp
Usuario Muy Activo
Usuario Muy Activo
 
Mensajes: 126
Registrado: Mar Ene 03, 2006 3:52 pm


Volver a C/C++

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados