小编jwo*_*ork的帖子

C中的长整数

嘿伙计们,这里的初学者问题.

如何在C中读取12或13位数的长整数(如书的ISBN号)?我想从带有书籍信息(ISBN /名称/作者)的文本文件中读取数字.

文本文件的内容如下:

0393312836

发条橙

安东尼伯吉斯

0199536759

米德尔马契

布雷特伊斯顿埃利斯

...

...

...

我正在使用此代码:

int main(void){

    FILE *f;
    char name[MAX], writer[MAX], line[MAX];
    long isbn;

    f=fopen("path.txt","r");
    if(f == NULL){
        return 0;
        }

    while (fgets(line, 1024, f) != NULL){

        sscanf(line,"%ld", &isbn);
        printf("ISBN: %ld\n",isbn);

        fgets(nome, 1024, f);
        printf("NAME: %s",name);

        fgets(line, 1024, f);
        printf("WRITER: %s",writer);


        }
    fclose(f);

    return 0;

}
Run Code Online (Sandbox Code Playgroud)

他能够阅读书籍和作者的姓名,但如果他们有9位数或更少的数字,他只会阅读这些数字.我需要做些什么来完成这项工作?

提前致谢.

c integer file long-integer

3
推荐指数
2
解决办法
8750
查看次数

标签 统计

c ×1

file ×1

integer ×1

long-integer ×1