Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/160.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C+中的字符串类+;_C++_String - Fatal编程技术网

C++ C+中的字符串类+;

C++ C+中的字符串类+;,c++,string,C++,String,如果要访问字符串中的char*数组,数组中是否包含空格 例如 String s = "1 3"; s[1]是”还是3 谢谢大家! 是的,它包括空格s[1]是' 空格和其他字符一样都是字符。是的 s[0] == '1'; s[1] == ' '; // equals 32 ascii s[2] == '3'; 它是零索引数组,起始元素为0,结束元素为n-1。 还要注意,s[1]不是”(双引号),而是”(单引号),因为单引号表示字符文字。C++没有名为String的类;C++有 STD::Str

如果要访问字符串中的
char*
数组,数组中是否包含空格

例如

String s = "1 3";
s[1]
还是
3


谢谢大家!

是的,它包括空格
s[1]
'

空格和其他字符一样都是字符。

是的

s[0] == '1';
s[1] == ' '; // equals 32 ascii
s[2] == '3';
它是零索引数组,起始元素为0,结束元素为n-1。
还要注意,s[1]不是
(双引号),而是
(单引号),因为单引号表示字符文字。

C++没有名为
String
的类;C++有<代码> STD::String (请注意小写)。您是在使用其他编程语言,还是真正的意思是
std::string=“13”?假设他使用的是
std::string
s[3]
是未定义的,不一定是
'\0'
@MagnusHoff,如果access使用的是
操作符[]
,则为true。如果他真的想“访问字符串中的字符*数组”,那么官方接口是
string::c_str()
,它保证以null结尾。@thekashyap:我更喜欢
data()
,这是我理解的访问底层
char*
的最直接的接口。@celtschk:你说什么“官方”?这两个
c_str
data
都是标准化的,而且,在c++11中,它们保证返回相同的值(即总是以null结尾)。@Lou:不,在c++98/03中,
data
不保证以null结尾,只有
c_str
是;在c++11中,两者都有这种保证。