C語言實現(xiàn)字符串拼接和拷貝
更新時間:2020年08月17日 08:53:41 作者:SCAU_Jimmy
這篇文章主要為大家詳細介紹了C語言實現(xiàn)字符串拼接和拷貝,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了C語言實現(xiàn)字符串拼接和拷貝的具體代碼,供大家參考,具體內(nèi)容如下
字符串拼接:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char *str_contact(const char *,const char *);
char *str_contact(const char *str1,const char *str2)
{
char *result = (char*) malloc(strlen(str1) + strlen(str2) + 1);
if(!result)
{
printf("Error: malloc failed in concat! \n");
exit(EXIT_FAILURE);
}
char *temp = result;
while(*str1 != '\0')
{
*result++ = *str1++;
}
while((*result++ = *str2) != '\0')
{
;
}
return temp;
}
int main(void)
{
char *ch1 = "string_";
char * ch2 = "_contact";
char *result = NULL;
result = str_contact(ch1,ch2);
print("result = %s\n",result);
free(result);
result = NULL;
return 0;
}
字符串拷貝:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char *strcpy(char *dst,const char *src)
{
assert(*dst != NULL && *src!=NULL);
char *temp = dst;
while(*src!='\0')
{
*dst++ = *src++;
}
*dst = '\0';
return temp;
}
int main(void)
{
char *ch1 = "str_cpy";
char *ch2;
char *result = strcpy(ch2,ch1);
printf("result = %s\n",result);
free(result);
result = NULL;
return 0;
}
小編再為大家分享一段之前收藏的代碼,感謝原作者的分享。
C++字符串拼接功能描述:實現(xiàn)在字符串末尾拼接字符串
#include <iostream>
#include <string>
using namespace std;
//string& operator+=(const char* str); //重載+= 操作符
//string& operator+=(const char c); //重載+= 操作符
//string& operator+=(const string& str); //重載+= 操作符
//string& append(const char* s); //把字符串s連接到當前字符串結(jié)尾
//string& append(const char* s, int n); //把字符串的前n個字符賦給當前的字符串
//string& append(const string& s); //把字符串s賦給當前字符串
//string& append(int n, char c); //用n個字符賦給當前字符串
void test01()
{
string str1 = "我";
str1 += "愛玩游戲";
cout << "str1 = " << str1 << endl;
str1 += ":";
cout << "str1 = " << str1 << endl;
string str2 = "LOL DNF";
str1 += str2;
cout << "str1 = " << str1 << endl;
string str3 = "I";
str3.append(" love ");
str3.append("game abcde", 4);
//str3.append(str2);
cout << "str3 = " << str3 << endl;
//lol dnf str3 = i love game
str3.append(str2, 4, 3); //從下標4位置開始, 截取3個字符,拼接到字符串末尾
cout << "str3 = " << str3 << endl;
}
int main()
{
test01();
return 0;
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
FFmpeg獲取網(wǎng)絡(luò)攝像頭數(shù)據(jù)解碼
這篇文章主要為大家詳細介紹了FFmpeg獲取網(wǎng)絡(luò)攝像頭數(shù)據(jù)解碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-06-06

