C新手语法错误

Ott*_*man 1 c

我正在尝试编写打开外部文件的代码,并打印出该文件中的行,但不断获取

第7行:警告:内置函数'exit'的不兼容隐式声明

第15行:错误:'%'标记之前的预期表达式第15行:错误:程序中的错误'\'

在尝试编译此代码时:

#include <stdio.h>
#include <assert.h>

main(int argc, char *argv[]){
    if (argc != 2){
        fprintf(stderr, "usage: strgen <file>\n");
        exit(1);
    }
    char *infile = argv[1];
    FILE *fp = fopen(infile, "r");
    assert(fp != NULL);
    char buffer[50];
    while( fgets( buffer, 50, fp) != NULL){
        printf("%d\n",buffer);
        printf(%s\n, buffer);
    }
    fclose(fp);
    return(0);
}
Run Code Online (Sandbox Code Playgroud)

Bri*_*ell 5

两个问题:

  1. 你需要#include <stdlib.h>获得声明exit()
  2. 您需要%s\n在第二个printf()语句中使用引号