Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“上的错误”;{\rtf1\ansi“编译C程序时_C_Syntax Error - Fatal编程技术网

“上的错误”;{\rtf1\ansi“编译C程序时

“上的错误”;{\rtf1\ansi“编译C程序时,c,syntax-error,C,Syntax Error,我直接从“C编程语言”中提取了代码。为什么它不工作?此外,我使用文本编辑器创建了文本文件。但是,每当我对其进行更改并保存时,它都会恢复为.rtf。如何修复它?您的双引号很奇怪。请尝试使用printf(“%3.0f%6.1f\n”,fahr,cellics);。通过此更改,它可以在OSX上为我编译。您的引号是richtext角度的引号。请尝试将它们替换为标准的“引号。从某些文本编辑器或internet复制和粘贴文本时,有时会发生这种情况。以下代码可以在linux上为我编译和运行 file.c:1:

我直接从“C编程语言”中提取了代码。为什么它不工作?此外,我使用文本编辑器创建了文本文件。但是,每当我对其进行更改并保存时,它都会恢复为.rtf。如何修复它?

您的双引号很奇怪。请尝试使用
printf(“%3.0f%6.1f\n”,fahr,cellics);
。通过此更改,它可以在OSX上为我编译。

您的引号是richtext角度的引号。请尝试将它们替换为标准的
引号。从某些文本编辑器或internet复制和粘贴文本时,有时会发生这种情况。以下代码可以在linux上为我编译和运行

file.c:1:1: error: expected identifier or '('
{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf190
^
file.c:21:11: warning: missing terminating ' character [-Winvalid-pp-token]
        printf( \'93%3.0f %6.1f\\n\'94,fahr,celsius );\
                 ^
#包括
main()
{
浮动华氏度,摄氏度;
int下、上、台阶;
下限=0;
上限=300;
步骤=20;
fahr=较低;

while(fahr您已将其保存为RTF文件。编译器的输入文件必须为纯文本。如果您使用的是OS X TextEdit.app程序,请使用
格式
菜单
生成纯文本
操作将其转换为纯文本,然后重新保存


此外(如其他答案所述),您需要将特殊的印刷引号字符(
)替换为直接的双引号字符(
).

当您从网站复制和粘贴内容时,有时字符的编码不正确。@downvote-这是一个完全正确的问题。我已经多次错过了同样的问题,如果您不知道要查找什么,错误消息几乎没有帮助。@Mobius,错误确实指示了伪字符的确切位置演员is@MattMcNabb如果你知道如何阅读这种错误信息,这很好,因为unicode看起来确实有点奇怪,特别是如果这是他第一次使用
C
,并且他是从一本书中抄出来的。阅读编译器错误需要时间来学习。我该怎么做?使用键盘上位于
键(如果您有标准键盘布局)@user3639182,它是常规的双引号。在QWERTY键盘上,它应该位于键盘的右侧,返回键的旁边。此外,请使用不会扭曲您键入内容的文本编辑器(例如记事本++),而不是RTFeditor@user3639182开头的垃圾和“有趣的引语”通常是由文字处理器输入的(因为它认为它比你聪明,所以被保存为RTF)-解决方案:使用适当的文本编辑器。好的,我这样做了。现在我得到了以下三个错误:试用。c:16:10:错误:在文本和标识符printf(“3.0f%6.1f\n”,fahr,centrics)”之外不允许使用非ASCII字符;^trial.c:16:13:错误:预期的表达式printf(“%3.0f%6.1f\n”,华氏度,摄氏度);^trial.c:16:26:错误:文本和标识符printf之外不允许使用非ASCII字符(“%3.0f%6.1f\n”,华氏度,摄氏度);
file.c:1:1: error: expected identifier or '('
{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf190
^
file.c:21:11: warning: missing terminating ' character [-Winvalid-pp-token]
        printf( \'93%3.0f %6.1f\\n\'94,fahr,celsius );\
                 ^
    #include <stdio.h>

    main()
    {
    float fahr, celsius;
    int lower, upper, step;

    lower = 0;
    upper = 300;
    step = 20;

    fahr = lower;

    while (fahr <= upper) {
        celsius =(5.0/9.0)*(fahr-32.0);
    printf( "%3.0f %6.1f\n",fahr,celsius );
    fahr = fahr + step;
        }
    }