c语言使用指针连接字符串(C语言100题集合017-使用指针连接两个字符串)
c语言使用指针连接字符串(C语言100题集合017-使用指针连接两个字符串)使用字符型指针变量和指向字符串的指针做函数的参数来实现字符串的连接实现两个已知字符串的连接,放到另外一个字符串数组中,然后将连接好的字符串进行打印显示函数:connect()功能:使用指针连接两个字符串描述:
系列文章《C语言经典100例》持续创作中,欢迎大家的关注和支持。
喜欢的同学记得点赞、转发、收藏哦~
后续C语言经典100例将会以pdf和代码的形式发放到公众号
欢迎关注:计算广告生态 即时查收
1 题目函数:connect()
功能:使用指针连接两个字符串
描述:
实现两个已知字符串的连接,放到另外一个字符串数组中,然后将连接好的字符串进行打印显示
2 思路使用字符型指针变量和指向字符串的指针做函数的参数来实现字符串的连接
注意初始化 char *conn来存储新字符串的时候,必须先分配存储空间
char*conn=(char*)malloc(strlen(str1) strlen(str2) 1);
memset(conn strlen(str1) strlen(str2) 1 0);//可选,初始化填充内存空间
另外,使用指针的特性,使得 conn 不断被赋值, str1 和 str2 指向的存储地址,达到字符串的连接
3 代码#include<stdio.h>
#include<string.h>
#include<stdlib.h>
/**
函数:connect()
功能:使用指针连接两个字符串
描述:
实现两个已知字符串的连接,放到另外一个字符串数组中,然后将连接好的字符串进行打印显示
**/
voidconnect(char*str1 char*str2 char*conn){
while(*str1!='\0'){
*conn=*str1;
conn ;
str1 ;
}
*conn=' ';//两个字符串直接添加逗号
conn ;
while(*str2!='\0'){
*conn=*str2;
conn ;
str2 ;
}
*conn='\0';
}
intmain(intargc charconst*argv[]){
char*str1="技术分享园子";
char*str2="计算广告生态";
char*conn=(char*)malloc(strlen(str1) strlen(str2) 1);//为conn分配空间,否则是无效地址
memset(conn strlen(str1) strlen(str2) 1 0);//初始化conn指向的存储地址
printf("第一个字符串:%s\n" str1);
printf("第二个字符串:%s\n" str2);
connect(str1 str2 conn);
printf("连接后的字符串是:\n");
printf("%s\n" conn);
}
示例结果:
$gccex017.c-odemo
$./demo
第一个字符串:技术分享园子
第二个字符串:计算广告生态
连接后的字符串是:
技术分享园子 计算广告生态
--END--
喜欢本文的同学记得点赞、转发、收藏~
更多内容,欢迎大家关注我们的公众号:计算广告生态
后续C语言经典100例将会以pdf和代码的形式发放到公众号
同时也带来更多系列文章以及干货!