有一个字符串插入函数,strcat函数只把字符串连接到后面,我想实现字符串前插,可看到的结果却不是那样子的,代码如下:
#include"stdio.h"
#include"string.h"
unsigned char cBuf[512];
int InsertPre(unsigned char n)
{
unsigned int i;
for(i=strlen(cBuf);i>0;--i)
cBuf[i+n]=cBuf[i];
return 1;
}
main()
{
unsigned char i;
unsigned char Flag='c'; //测试,在cBuf前面插入一个字符.
unsigned char exit_flag;
printf("please input string:\n");
scanf("%s",cBuf):
InsertPre(1);
for(i=0;i<1;i++)
cBuf[i]=Flag;
printf("%s",cBuf);
while(1)
{
scanf("%d",&exit_flag):
if(exit_flag==1) exit(0);
else continue;
}
}
当我输入一个字符串给cBuf,得到的运行结果是:输入:fire,结果:ciire!预期结果应该为:cfire!
根本没有把Flag的字符字符插入.
[此贴子已经被作者于2006-2-28 10:28:36编辑过]