#include <stdio.h>
#include <stdlib.h>
void main()
{
FILE *fp;
char *p="你知道吗?我是真的爱你!看见窗外的灯火,我知道他已经不再属于我!";
if((fp=fopen("Windows.txt","w"))==NULL)
{
printf("错误!");
exit(0);
}
while(*p!='\0')
{
fputc(*p,fp);putchar(*p);
++(*p);
}
}
帮我看下这个写入文件有何错误?编译通过,就是无法达到想要的效果!?
望高手,帮忙看一下!
你好.
你程序中的问题出来对于指针p的自增上. 应该是++p. 而不是++*p. 如果不清楚还请追问.
部分代码如下:
while(*p!='\0')
{
fputc(*p,fp);
putchar(*p);
++(p); //修改部分.
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fp;
char *p="你知道吗?我是真的爱你!看见窗外的灯火,我知道他已经不再属于我!";
if((fp=fopen("Windows.txt","w"))==NULL)
{
printf("错误!");
exit(0);
}
while(*p!='\0')
{
fputc(*p,fp);
putchar(*p);
++p;
}
getchar();
}
就是把++(*p);改为++p就行了
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息