加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

指向c字符串的指针

发布时间:2020-12-16 06:47:45 所属栏目:百科 来源:网络整理
导读:在下面的代码中,我在change()函数中使用指向c字符串的指针. 在使用指向字符串的指针时,是否仍然使用字符串类’运算符?例如,at()适用于[]运算符,但有没有办法使用[]运算符? #include string#include iostreamusing namespace std;void change(string * s){
在下面的代码中,我在change()函数中使用指向c字符串的指针.

在使用指向字符串的指针时,是否仍然使用字符串类’运算符?例如,at()适用于[]运算符,但有没有办法使用[]运算符?

#include <string>
#include <iostream>

using namespace std;

void change(string * s){

    s->at(0) = 't';
    s->at(1) = 'w';
    // s->[2] = 'o'; does not work
    // *s[2] = 'o'; does not work


}

int main(int argc,char ** argv){

    string s1 = "one";

    change(&s1);

    cout << s1 << endl;

    return 0;
}

解决方法

取消引用它:

(*myString)[4]

但是,我可以使用引用建议而不是指针:

void change(string &_myString){
    //stuff
}

这样你就可以像使用对象一样使用所有东西.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读