千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > string assign用法介绍

string assign用法介绍

来源:千锋教育
发布人:xqq
时间: 2023-11-25 01:36:58 1700847418

一、assign函数概述

string类中的assign函数可以将一个新的字符串分配给已有的字符串,或者将一个新的子字符串分配给已有的字符串。

assign函数的语法如下:


string& assign (const string& str);
string& assign (const string& str, size_t subpos, size_t sublen);
string& assign (const char* s, size_t n);
string& assign (const char* s);
string& assign (size_t n, char c);

二、将新字符串赋值给已有的字符串

可以使用assign函数将一个新的字符串赋值给已有的字符串,如下:


string str1 = "Hello";
string str2;
str2.assign(str1); //将str1赋值给str2
cout << str2 << endl;

输出结果为:


Hello

可以看到,将字符串str1赋值给了字符串str2,输出str2的值为"Hello"。

三、将新的子字符串赋值给已有的字符串

除了可以将一个完整的字符串赋值给已有的字符串,还可以使用assign函数将一个新的子字符串赋值给已有的字符串。

如下所示,将字符串str1的第2个字符开始的4个字符分配给字符串str2:


string str1 = "Hello";
string str2;
str2.assign(str1, 1, 4); //将str1的第2个字符开始的4个字符分配给str2
cout << str2 << endl;

输出结果为:


ello

可以看到,字符串str2的值为"ello",即为字符串str1的第2个字符开始的4个字符。

四、将字符数组或指针赋值给已有的字符串

除了可以将一个字符串或子字符串赋值给已有的字符串,还可以使用assign函数将一个字符数组或指针赋值给已有的字符串。

如下所示,将字符数组"Hello World"赋值给字符串str1:


char arr[12] = "Hello World";
string str1;
str1.assign(arr, 11); //将字符数组"Hello World"分配给str1
cout << str1 << endl;

输出结果为:


Hello World

可以看到,字符串str1的值为"Hello World",即为字符数组"Hello World"。

五、给已有字符串分配n个相同的字符

在assign函数中,还可以将n个相同的字符分配给已有的字符串。

如下所示,将3个'a'分配给字符串str1:


string str1;
str1.assign(3, 'a'); //给str1分配3个'a'
cout << str1 << endl;

输出结果为:


aaa

可以看到,字符串str1的值为"aaa",即为3个'a'。

tags: stringassign
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT