当我将c文件的输出重定向到另一个文件时,C编程错误

时间:2017-01-27 16:33:10

标签: c compiler-errors

我目前有一个名为assign1.c的文件,当我使用SSH连接到远程Linux终端时,它会正确编译并运行。

#include <stdio.h>
#define PI 3.141593

int main(){
    int degrees = 0;
    double radians;

    printf("Degrees to Radians \n");

    degrees = 0;
    radians = degrees*PI/180;
    printf("%6i %9.6f \n", degrees, radians);

    degrees = 10;
    radians = degrees*PI/180;
    printf("%6i %9.6f \n", degrees, radians);

    while( degrees < 350){
        degrees +=10;
        radians = degrees*PI/180;
        printf("%6i %9.6f \n", degrees, radians);
    }

    degrees = 360;
    radians = degrees*PI/180;
    printf("%6i %9.6f \n", degrees, radians);

}

我用过./assign1&gt; prog1.c重定向并将输出发送到另一个文件prog1.c

Degrees to Radians 
     0  0.000000 
    10  0.174533 
    20  0.349066 
    30  0.523599 
    40  0.698132 
    50  0.872665 
    60  1.047198 
    70  1.221731 
    80  1.396264 
    90  1.570796 
   100  1.745329 
   110  1.919862 
   120  2.094395 
   130  2.268928 
   140  2.443461 
   150  2.617994 
   160  2.792527 
   170  2.967060 
   180  3.141593 
   190  3.316126 
   200  3.490659 
   210  3.665192 
   220  3.839725 
   230  4.014258 
   240  4.188791 
   250  4.363324 
   260  4.537857 
   270  4.712389 
   280  4.886922 
   290  5.061455 
   300  5.235988 
   310  5.410521 
   320  5.585054 
   330  5.759587 
   340  5.934120 
   350  6.108653 
   360  6.283186 

然而,当我尝试编译gcc -o prog1 prog1.c时,我收到一条错误消息。

prog1.c:1:1: error: unknown type name âDegreesâ
 Degrees to Radians 
 ^
prog1.c:1:12: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âRadiansâ
 Degrees to Radians 
            ^

我是C编程的新手,仍然无法理解错误消息,任何人都能理解我的错误消息?

1 个答案:

答案 0 :(得分:0)

我对你想要达到的目标感到有点困惑,所以我会告诉你完整的故事。

所以,你有一个用C语言编写的程序(即文本文件)。由于计算机不理解文本,我们需要用计算机语言翻译它。所以,你有程序assign1.c,你在可执行文件中编译它(即将C翻译成机器可读的形式):

gcc -o assign1 assign1.c

然后,你运行assign1:

./assign1

,它在标准输出(即屏幕上)上产生一堆输出。您可以使用重定向将其写入文件:

./assign1 > prog1.c

现在,文件prog1.c是一个简单的文本文件,其中包含程序生成的输出(扩展名无关紧要)。尝试使用gcc编译它是没用的,因为它不是一个有效的C程序,而是包含程序的输出。

现在,该文件怎么办?好吧,无论你想要什么。你可以看看它:

cat prog1.c

少prog1.c

(q从较少退出),或将其发送给朋友或......无论如何。