Kezdőoldal » Számítástechnika » Programozás » Miért nem működik a C-ben...

Miért nem működik a C-ben megírt programom?

Figyelt kérdés

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

typedef struct adat{

char x[20];

char y[20];

char z[20];

struct adat *next;

}adat;


int main(void)

{

FILE *fp;

adat *lista;

char x[20];

char y[20];

char z[20];


lista = NULL;

fp = fopen("ADATOK.TXT", "r");


while (fscanf(fp, "%s,%s,%s,", &x, &y, &z) == 3)

{

adat *uj = (adat*)malloc(sizeof(adat));

strcpy(uj->x, x);

strcpy(uj->y, y);

strcpy(uj->z, z);

uj->next = lista;

lista = uj;

}

fclose(fp);


while (lista != NULL)

{

adat *p = lista->next;

printf("%s\n%s\n%s\n", lista->x, lista->y, lista->z);


lista = p;

}

int i;

scanf_s("%d", &i);

return 0;

}


A sztringeket kellene kiírnia de nem teszi...A fajl felépítése jó.


2014. nov. 20. 22:56
 1/5 anonim ***** válasza:
fscanf vesszoket nem tud kezelni, csinald szokozokkel.
2014. nov. 20. 23:21
Hasznos számodra ez a válasz?
 2/5 A kérdező kommentje:
Továbbra sem jó.
2014. nov. 20. 23:30
 3/5 A kérdező kommentje:
Megoldva
2014. nov. 20. 23:42
 4/5 anonim ***** válasza:
szivesen
2014. nov. 20. 23:46
Hasznos számodra ez a válasz?
 5/5 uno20001 ***** válasza:

Egy dolgot megjegyeznék:


"while (fscanf(fp, "%s,%s,%s,", &x, &y, &z) == 3)"


Itt nem kell az "&" operátor a tömbök nevei elé, mivel azok alapból pointerek.

2014. nov. 21. 13:40
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!