Miért nem működik a C-ben megírt programom?
#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ó.
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.
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!