我想使用文件操作在 C 中创建一个链表。我想得到一条线并将其拆分并存储在结构中。但是我不能拆分两个字符串。
我的文件是这样的:
1#Emre#Dogan
2#John#Smith
3#Ashley#Thomas
etc...
我想使用 fscanf 从文件中读取一行。
fscanf(file,"%d#%s#%s",&number,name,surmane);
但是结果是
Number : 1
Name : Emre#Dogan
如何去掉名字中的 # 元素并将其拆分为名字和姓氏;
最佳答案
#include <stdio.h>
#include <string.h>
int main(void) {
FILE *fptr;
fptr = fopen("Input.txt", "r");
int number;
char *name;
char *surname;
char line_data[1024];
fgets(line_data, 1024, fptr);
number = atoi(strtok(line_data, "#"));
name = strtok(NULL, "#");
surname = strtok(NULL, "#");
printf("%d %s %s", number, name, surname);
}
输出:
1 Emre Dogan
编辑: 将变量“number”从字符串转换为整数。
关于c - 在 C 中使用 "fscanf"如何拆分两个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19511589/