C语言的简单问题,请回答下

来源:百度知道 编辑:UC知道 时间:2024/07/08 12:34:52
#include<stdio.h>
void main()
{
char str[100],c;
char *p=str;
printf("please input str\n");
gets(str);
printf("please input c:\n");
scanf("%c",&c);
for(int i=0;*(p+i)!=0;i++)
if(*(p+i)!=c)
printf("%c",*(p+i));
}

这段程序为什么能够在Vc上运行,而在C与C++程序设计学习与实验系统上运行不了。如果我想在C与C++程序设计学习与实验系统上运行要改哪个地方!

变量 i 应在起始声明
for(i=0;*(p+i)!=0;i++)
我觉得这地方应该为
for(i=0;*(p+i)!='\0';i++)

*(p+i)!=0
改为 *(p+i)!=null

你这程序编译时出了什么错误?还有就是你的程序的目的是干什么?在c语言中变量一般都在前面声明,而不是在for()语句里声明,这样一般都会出错,这就是c和c++等其他语言的不同处之一。

你要讲一下这程序实现什么目的才可以帮你改

说下这个是什么程序啊