【问题标题】:C - Format input string to integer variables [duplicate]C - 将输入字符串格式化为整数变量
【发布时间】:2015-10-14 22:27:24
【问题描述】:

我有一个看起来像“%i|%i”的字符串。 一些例子:“52|23”、“7|3”、“98|6”。

我想将这种字符串解析为两个 int 变量。 所以 "52|23" 将成为一个变量。 int a=52 和 int b=23。

这些字符串保存在 .txt 文件中。 我怎样才能把它们解析出来并像上面解释的那样解析它们?

【问题讨论】:

    标签: c string parsing int


    【解决方案1】:

    只需使用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 */
    }
    

    【讨论】:

    • 太棒了。不知道这个方法哈哈。顺便说一句,如果字符串与模式不匹配会发生什么?
    猜你喜欢
    • 2010-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-10
    • 1970-01-01
    相关资源
    最近更新 更多