设计函数char *insert(str,substr,n)?

#include<stdio.h>
#include<string.h> 
#include<stdlib.h>
char* insert(char *str,char *substr,int n);
char* insert(char *str,char *substr,int n)
{
int j=0;
char *news,*begin;
news=(char *)malloc(strlen(str)+2+strlen(substr));
begin=news;
for(int i=0;i<n;i++) 
( 填空 ) 
while(*substr!=0)
( 填空 ) 
while(*str!=0)
( 填空 ) 
( 填空 ) 
strcpy(str,begin);
free(begin);
( 填空 )
}
int main()
{
char str[80];
char substr[80];
int n;
gets(str);gets(substr);
scanf("%d",&n);
printf("%s",insert(str,substr,n));
}

手掌心
浏览 1033回答 2
2回答

森栏

您好,对于字符串的处理就是定义字符数组,如char c[4]=“adc”,这个是可以把字符串赋值进去,其实这种写法等价于char *c=“abc”,char *是定义一个指针,所以加*,如果是*c则代表的是C指向的字符,我刚刚的实例中*c就是a.数组的函数参数都是定义指针哦,当然你也可以定义数组,其实是一样的,写法不一样,效果完全一样,可以认为是同一样东西。第二个和上面解释一样,你可以用数组,数组其实就是定义了一个指针,不过数组会告诉你指向的空间总大小,直接定义指针不会,但定义指针时进行初始化的赋值,就和定义数组效果一样了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Oracle