从c程序中的txt文件中获取特定数字

时间:2016-11-14 23:27:37

标签: c

我有这个只包含的.txt文件:

THN1234 54

如何才能将数字54与其余部分隔离开来,并在程序中将其用作整数变量?

2 个答案:

答案 0 :(得分:0)

哇。自从我使用C以来已经很长时间了。但是,在这种情况下,我认为C和C ++的答案是相似的。您可以使用strtok_r将字符串拆分为标记,然后获取第二个标记并将其解析为int。请参阅http://www.cplusplus.com/reference/clibrary/cstring/strtok/

您可能还想查看this问题。

答案 1 :(得分:0)

如果输入来自标准输入,那么您可以使用:

int value;

if (scanf("%*s %d", &value) != 1)
    …Oops - incorrectly formatted data…
…use value…

%*s读取但丢弃可选的前导空格和一个或多个非空白的序列(THN1234);空白会跳过更多可选空白; %d读取整数,在输入缓冲区中留下换行符。如果空白后面的内容无法转换为数字,或者您获得了EOF,则可以在if条件下检测到它并在if的正文中报告。

嗯......我看到BLUEPIXY在他们的comment中说的基本相同(减去解释),甚至可以选择整数变量名。