|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
#include<string.h>
void main()
{
char a[80]="AB",b[80]="LMNP";
int i=0;
strcat(a,b);
while(a[i++]!='\0')
b[i]=a[i];
puts(b);
}
麻烦会的能不能帮着分析一下,看不懂,它的运行是怎么来的,为什么L跑第一个上了
extern char *strcat(char *dest, const char *src);
把src所指向的字符串(包括“\0”)复制到dest所指向的字符串后面(删除*dest原来末尾的“\0”)。要保证*dest足够长,以容纳被复制进来的*src。*src中原有的字符不变。返回指向dest的指针
- #include <stdio.h>
- #include<string.h>
- void main()
- {
- char a[80]="AB",b[80]="LMNP";
- int i=0;
- strcat(a,b); // a = "ABLMNP"
- while(a[i++]!='\0') // 循环1. i=0
- b[i]=a[i]; // 循环1. i++后,这里 b[1] = a[1]
- // 上2句执行完
- // b = "LBLMNP" 第1个'L'是b中原值,没有被修改到,"BLMNP"是从a[1]处开始复制到b[1]开始处得到的值
- puts(b); // 输出b
- }
复制代码
|
|