0

我正在尝试在终端中使用 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;
}

收到以下错误在此处输入图像描述

我需要了解什么是

<U+0010> 
4

1 回答 1

4

<U+0010>在这里表示:值为 0x10(hexadecimal; 16 in decimal) 的 Unicode 字符

<U+0010>叫做DATA LINK ESCAPE(DLE)

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

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

于 2018-02-14T05:48:48.617 回答