C - 将输入字符串格式化为整型变量
问题描述:
我有一个看起来像“%i |%i”的字符串。 一些例子:“52 | 23”,“7 | 3”,“98 | 6”。C - 将输入字符串格式化为整型变量
我想将这种类型的字符串解析为两个int变量。 所以“52 | 23”将成为一个变量。 int a = 52和int b = 23。
这些字符串保存在.txt文件中。 我如何解析它们并像上面解释的那样解析它们?
答
只需使用fscanf
:
FILE *f = fopen("file.txt", "r");
if(!f) {
/* file open failed */
}
int a, b;
while(fscanf(f, "%i|%i", &a, &b) == 2) {
/* do something with a and b */
}
真棒。不知道这种方法大声笑。 顺便说一句,如果字符串与模式不匹配会发生什么? – Domien