Ich habe eine Datei bekommt namens "server.cfg" mit diesem Inhalt:Wie kann ich das zweite Wort jeder Zeile einer Datei in ein Zeichen speichern?
NAME SRV-01
MAC 000543D3F4D8
ich will "SRV-01" und "000543D3F4D8" bis 2 Zeichen speichern *. Ich habe so etwas wie dies:
FILE *fileS;
char *name;
char *mac;
char *p;
fileS=fopen("server.cfg","r");
while(fgets(line,1000,fileS)!=NULL){
if(line[0]=="N"){
p=strtok(line," ");
p=strtok(NULL," ");
name=p;
printf("Name: %s\n",name);
}
if(line[0]=="M"){
p=strtok(line," ");
p=strtok(NULL," ");
mac=p;
printf("Name: %s Mac: %s\n",name,mac);
}
Die Ausgabe lautet:
Name: SRV-01
Name: 000543D3F4D8 Mac: 000543D3F4D8
Aber ich würde diese Ausgabe wollen:
Name: SRV-01
Name: SRV-01 Mac: 000543D3F4D8
Ich weiß, dass das Problem auf die Zeiger verwandt ist, aber ich weiß nicht, wie ich das lösen könnte. Irgendein Vorschlag?
Danke
Danke Mann, es hat funktioniert! –