C++中string类的大小是类内部维护的,不需要在考虑它的size
如:string max;
但是string max[];
的声明是错误的,因为string本身的size是可变的,C++不支持可变数组
用链表存string吧,参数传递也不难
仔细理解一下迭代器吧
string s="abcdefghi";
for (string::iterator it=sbegin();it!=send();it++)
cout<<it;
仔细到网上搜一下迭代器吧。可以先去百度百科看看。
迭代器可以说是一种智能的指针,涉及东西很多,不是一两句话能说清的。
某位先生自己学艺不精,不会用STL,就以为人家string类不好。不要在这里误导楼主好不?
代码如下:
#include <stdioh>#include <stringh>
int main()
{
char text = "ad bc ef content a string test test test";
char s = "content";
char p;
// 使用 strstr 函数查找字符串 content 的位置
p = strstr(text, s);
if (p != NULL) {
// 跳过 content 使 p 指向 content 后面的内容。
p += strlen(s);
// 如果需要跳过 content 后面的那个空格 p 再加1
p++;
printf("%s\n", p);
}
return 0;
}
运行结果:
(1)asize()(返回字符数,STL容器都有这个方法)
例如:
#include<iostream>int main()
{
using namespac std;
string a="abc";
cout<<asize()<<endl;
}
输出:3
(2)alength()(同size(),这是早期开发string类时加入的,现在还可以用,但其他STL容器没有此方法)
解释一下sizeof的结果:
sizeof运算符返回对象或类型实际占有的空间,string对象包含一个指向字符串的指针,指针很小,一般与int相当;string还包含其他数据成员,因此不论它存储的字符串有多大,它的大小一般是恒定的。
以上就是关于string数组(指针)问题全部的内容,包括:string数组(指针)问题、c++ 怎么用指针指向string型的字符串、C语言 在字符串指针中读取特定内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)