c++ string

1.c语言中的字符串

在c当中我们定义一个字符串用的是变量类型加变量名。一般的字符串我们可以改变整个字符串但是不可以改变某一个的值,而利用数组方式的字符串,我们既可以改变整个字符串,也可以改变某一个位置的值,改变整个字符串的值得时候我们要用到strcpy这个函数。

    const char* p = "1234";
	p = "qwer";
	cout << p << endl;

	char strarr[5] = "abcd";
	strarr[1] = '1';
	cout << strarr << endl;
    strcpy_s(strarr, "1234");
	cout << strarr << endl;

比较两个字符串是否相同用的是  strcmp。

cout << strcmp(p, strarr) << endl;

字符串拼接 用的是strcat_s
  


	char atrArr[10] = "12";
	strcat_s(atrArr, "ab");
	cout << atrArr << endl;

2.在c++中定义字符串和改变值,我们利用string去定义,切记使用string一定要有头文件#include<string>

    string str;
	str = "asd";
	str[1] = '1';
	cout << str << endl;

使用string时可以通过=来判断字符串是否相等,+, +=可以用于字符串的拼接,substr为截取字符串substr(初始下标,截取长度)输出为截取下来的字符串,截取长度如果过多则截取有效的长度,如果下标超出,会出现异常,获取字符串的长度可以用size()或者length(),如果想用c中的strcmp可以将string类型的字符串转化为const char*类型利用的是.c_str(),下面是一些例子。

    if (str == strarr) {
        cout << "相同" << endl;
    }
    else {
        cout << "不相同" << endl;
    }

    str = "12ab";
    if (str == atrArr) {
        cout << "相同" << endl;
    }
    else {
        cout << "不相同" << endl;
    }
    //拼接
    string strnew = str + "asdfg";
    cout << strnew << endl;//12abasdfg
    cout << strnew.substr(1, 3) << endl;//2ab
    cout << strnew.size() << "   " << strnew.length() << endl;//9 9

    cout << strcmp(strnew.c_str(), strarr) << endl;
	system("pause");
	return 0;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值