【问题标题】:CPP comparing string pointer with other pointerCPP 将字符串指针与其他指针进行比较
【发布时间】:2022-11-03 23:41:58
【问题描述】:

我正在将字符串指针与其他指针进行比较 但是字符串指针在编写此代码时出错

我尝试使用字符串指针打印元素 但实际上得到错误


int main()
{
   string s="abcde";
   string *sh=&s;
   cout<<sh[2]<<" "<<s[2]<<endl;
}


RESULT -ERROR





【问题讨论】:

    标签: string pointers


    【解决方案1】:

    代码中的 sh 变量是字符串的指针,而不是作为字符串内容的字符。它与 s[2] 的含义不同,因为 s 是一个字符串,[] 运算符将访问其第三个元素。 当您访问 sh[2] 时,您正在访问第三个细绳从 sh 表示的“字符串数组”的开头地址作为指针。由于您没有此类数据,因此此访问无效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-17
      • 2014-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多