Ik gebruik de volgende code om header informatie uit een bestand te krijgen. Alleen wanneer ik str2 inlees en toeken dan neemt str1 dezelfde waarde aan als str2. Heeft iemand een idee wat ik fout doe ?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
| struct Header
{
char *str1;
char *str2;
int nr;
} header;
int main()
{
FILE *file;
int i;
file = fopen("c:\\test.txt", "r");
for(i=0;i!=8;i++)
{
char buffer[256];
fgets(buffer,255,file);
buffer[strlen(buffer)-1]='\0';
switch(i)
{
case 0:
header.str1 = buffer;
break;
case 1:
header.str2 = buffer;
break;
case 2:
sscanf(buffer, "%i", &header.nr);
break;
}
}
printf("%s\n", header.str1);
printf("%s\n", header.str2);
printf("%i\n", header.nr);
fclose(file);
getch();
return 0;
} |