字符排序输出问题
#include <stdio.h>#include <string.h>
void main()
{
char *p={"vb","for","vc++","auth","java"},temp;
int i,j;
for(i=0;i<4;i++)
{
for(j=0;j<4-i;j++)
{
if(strcmp(p,p)>0)
{
strcpy(temp,p);
strcpy(p,p);
strcpy(p,temp);
}
}
}
for(i=0;i<5;i++)
{
puts(p);
}
} 这个为什么不对,运行不了 说明你的意图~ strcpy必须要求前面的实参长度足够存放第二个实参的长度
你第二个 strcpy(p,p) 明显不能满足这个要求 BngThea 发表于 2018-3-20 16:44
strcpy必须要求前面的实参长度足够存放第二个实参的长度
你第二个 strcpy(p,p) 明显不能满足这个 ...
知道了,由于前面是字符指针,不可以修改内容
页:
[1]