"函数声明符后的预期函数体"在终端使用GCC编译

时间:2018-02-14 05:44:12

标签: c gcc compiler-errors gcc-4.2

我正在尝试使用终端

中的GCC编译以下程序
//
//  fileCopy.c
//  
//
//  Created by Saurabh Saini on 14/02/18.
//
#include <stdio.h>

int main(){

int c;
c = getchar();

if(c!=EOF){
    putchar(c);
    c = getchar();
}
return 0;
}

收到以下错误enter image description here

我需要了解什么是

<U+0010> 

1 个答案:

答案 0 :(得分:4)

<U+0010>表示: Unicode字符,值为0x10(十六进制;十进制为16)

<U+0010>被称为DATA LINK ESCAPE(DLE)

错误是由于这个角色造成的。由于<U+0010>控制字符,因此gcc编译器不会忽略它(空格字符被gcc编译器忽略)所以,它正在创建编译错误。从源文件中删除此字符,它将解决问题。

注意: <U+0010>是不可打印的字符,因此您无法看到它。您需要使用一些hex-editor编辑器。您可以使用vim编辑器。请参阅herehere了解如何使用它。