简单的c语言问题..

来源:百度知道 编辑:UC知道 时间:2024/06/16 17:15:14
char s[]; 定义对否?
int i,c=0;
for(i=m;w[i];i++)
{
s[c++]=w[i];
}
for(i=0;i<m;i++)
{
s[c++]=w[i];
}
s[c]=0;
strcpy(w,s);

两个for是并列的么?怎么把两部分都赋给w[i]了呢?
还有s[c]=0怎么理解呢?是对应哪一条语句还是什么..?
谢谢了~

程序都不完整 怎么给你看啊
还有M的值不清楚 肯定会编译出错
根据你的这段程序 如果M=4;
if(i=m;w[i];i++)
{s[c++]=w[i];} s[c+1]的值是w[4]i++ 无限循环了
for(i=0;i<m;i++)
{s[c++]=w[i]}s[(c+1)++]的值是w[i]即w[0]
s[c]=0;这里s[c]=0的值是\0即字符串的结束字符
strcpy(w,s);将s复制给W;
对于你的说两个FOR 是并列的不?
不是 先运行了第一个FOR 之后再运行第二个
程序的检查和运行 都是由主函数的第一行开始由上到下,

char s[]; 定义对否?
否,参数时可以这样写

还有s[c]=0怎么理解呢?
字串结围给个0