如何在#include <stdio.h>和int main(){} </stdio.h>之间添加换行符

时间:2013-05-30 13:29:53

标签: c pointers io getchar

我正在编写一个程序,使用getchar()将输入作为字符序列,并使用fopen()和putc()函数创建pro.cpp源代码文件。

当我编译这个程序创建的源代码文件时,它会生成错误。 如果我从新行开始int main {},则可以解决此错误。所以我需要在#include和int main {}

之间输入换行符

我不知道该怎么做。

#include<stdio.h> 
int main()
{
    FILE *fp;
    char pgm[100];
    char *p_pgm;

 p_pgm=pgm;

 printf("Enter the program as a input");

 while((*p_pgm=getchar())!=10)
     p_pgm++;

 *p_pgm ='\0';


 fp =fopen("e:\\pro.cpp","w");
 while(*p_pgm!='\0')
     putc(*p_pgm++,fp);  


 fclose(fp);


}

1 个答案:

答案 0 :(得分:0)

当您找到换行符(ascii代码10)时,您将停止读取字符,然后将其替换为'\ 0'。因此,如果将其写入输出文件,它显然不包含任何换行符。你的程序输入源是否没有换行?