c语言中如何将一字符串插入另一个字符串中?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中如何将一字符串插入另一个字符串中?相关的知识,希望对你有一定的参考价值。

参考技术A #include<stdio.h>
void main()

void insert(char a[],char b[],int t);
char a[100],b[100];
int t,i,j;
printf("input a string:\n");
gets(a);
printf("inut b string:\n");
gets(b);
printf("input the position to insert:\n");
scanf("%d",&t);
if(t<=0 || t>strlen(a)+1)

printf("wrong!.input again");
scanf("%d",&t);

insert(a,b,t);


void insert(char a[],char b[],int t)

int len1,len2;
int i,j,k,l;
char c[100];
len1=strlen(a);
len2=strlen(b);
for(i=0;i<t-1;i++)
c[i]=a[i];
for(j=0;j<len2;j++)
c[i+j]=b[j];
l=0;
for(k=t-1;k<len1;k++)

c[i+j+l]=a[k];
l++;

c[i+j+l]='\0';
puts(c);

另外,站长团上有产品团购,便宜有保证

C++怎样将一个数插入到数组末尾?

参考技术A

把单一数放到数组的末尾,于是每个struct objects可以拥有可变数组的数组。

struct mumble

      /* stuff */
      char pc[1]; 
;
 
//从文件或标准输入装置中取得一个字符串
//然后为struct 本身和该字符配置足够的内存
 
struct mumble * pmumbl = (struct mumble*)
             malloc(sizeof(struct mumble) + strlen(string) +1);
strcpy(&mumble.pc,string);

首先,结构体的末尾定义了一个char数组,只分配了1个字符。那怎么能说是可变大小数组。

往下看,他用malloc函数分配了一堆的内存。大小为结构体+字符串+1(字符串结束符)如下图所示。

通过strcpy,将string字符串拷贝给mumble.pc,pmumble已经分配了足够的内存,因此只要赋值即可,也就达到了可变大小数组的意思。

但是,C++中的类可不同。  

C++中 public、protected、private内的声明顺序可以被保证,但是这三个关键字的布局是不同的。因此总的排列顺序并不能被保证。因此,不能实现struct的可变大小的数组。

以上是关于c语言中如何将一字符串插入另一个字符串中?的主要内容,如果未能解决你的问题,请参考以下文章

将一个字符串插入到另一个字符串的指定位置。c语言编写

请教:C语言中如何将一字符串转换成无符号整型

c语言用指针将一个字符串插入另一个字符串中指定位置

c语言程序编制一个将一个字符串插入到另一个字符串的指定位置的函数。

c语言如何将一串字符数据写入字符串数组

请问,JAVA中如何实现将一字符串一一导入数组