编写函数,把一个指针数组中的n个字符串连接起来,生成一个大字符串,在主函数中打印该字符串,不使用string.h头文件。
#include <stdio.h>
#include <string.h>
char *LinkStr(char *a,char **s,int n){
char i=0;
a=NULL;
while(n--) strcat(a,(s+i++));
return a;
}
void main(void){
char *a[]={"The program ","is about m","any strings to"," be connected!"};
char Array[511];
printf("%s\n",LinkStr(Array,a,sizeof(a)/4));
}
怎么不用string.h头文件啊
把strcat换掉,用逐个字符加入目标数组尾部
#include <stdio.h>
#include <string.h>
char *LinkStr(char *a,char **s,int n){
char i=0;
a=NULL;
while(n--) strcat(a,(s+i++));
return a;
}
代码中有一句strcat(a,(s+i++)),所以使用strcat——可以将两个char类型连接。
如果不用strcat就能把string.h头文件去掉,怎么写?就是两个数组,一个数组存字符串另一个用数组来接收,按照所想实现的,添加字符连接就可以。
望采纳!!