|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <conio.h>
#include <string.h>
#include <stdio.h>
void fun(char str[][10],int m, char *pt)
{ int k,q,i,j=0;
for(k=0;k<m;k++)
{ q=strlen(str[k]);
j+=q;
for(i=0;i<q;i++)
pt[i]=str[k][i];
pt+=q;//这条语句是什么意思呀?pt不是指针吗,q不是常数吗,两者能相加吗?
pt[0]=0;
}
pt-=j;//这条语句是给指针清零吗?
}
main()
{ int m, h;
char s[10][10],p[120];
printf("\nPlease enter m: ");
scanf("%d",&m); gets(s[0]);
printf("\nPlease enter %d string:\n ",m);
for(h=0;h<m;h++) gets(s[h]);
fun(s,m,p);
printf("\nThe result is :%s\n ",p);
}
代码用最好代码文本写出哦就是上面的"<>",这样看的清楚点,
- pt+=q; ==> pt=pt+q;
- pt-=j; ==>pt =pt-j;
复制代码
这里定义的是字符型指针,也就是指针指向一个字符型数据的地址,例如p++,不就是依次给指针p+1么,也就是将p指向下一个字符的意思吧,我也是个新手 希望对你有帮助~-~ 
|
|