请教vector容器问题...
PS:不允许使用Vector<string>,要求用Vector<char>来做,不能用标准库函数来去标点和改大小写。(实在没什么思路,求各位大哥帮帮小弟)
#include <iostream>
#include <vector>
using std::cout;
using std::cin;
using std::endl;
using std::vector;
int main()
{
vector<char> ch;
char c;
char *p;
while(cin>>c)
{
ch.push_back(c);
}
if (ch.size()==0)
{
cout<<"请重新输入!"<<endl;
}
for (vector<char>::iterator itr = ch.begin();itr != ch.end();itr++)
{
*p = &ch[itr];
if (*p >= 'a' && *p <= 'z' || *p >= 'A' && *p <= 'Z')
{
if (*p >= 'a' && *p <= 'z')
{
*p = *p - 32;
}
}
}
}
逆序用数组或string会求--------------------
int len=str.length();
char temp;
for (int i=0;i<len/2;i++)
{
temp=str[i];
str[i]=str[len-1-i];
str[len-1-i]=temp;
}
但是如果是在vector容器里,如何实现......望给思路...
相关推荐
C++ vector容器 编写 约瑟夫环实习报告(密码问题)
问题描述 编号为1,2……,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。 测试数据 8 3 1 2 3 4 5 6 结果 3 6 5 4 2 8 7 1 利用vector容器,并利用iterator迭代器进行操作
vector(容器)、 c &c++编程规范doc、495个c问题.pdf、c常见问题.pdf
vector(容器)、 c &c++编程规范doc、495个c问题.pdf、c常见问题.pdf
详解C++编程中的vector类容器用法
vector是一个标准库中的容器,使用时需要包含#include 头文件,也可以说vector是一个类模板而不是一种数据类型,对它的定义,需要指定类型,需要的朋友可以参考下
手搓STL风格vector容器[代码]
本文详细介绍了如何从零实现一个STL风格的vector容器,重点剖析了三指针架构设计、深拷贝控制、动态扩容策略以及迭代器失效等核心问题。作者通过完整代码演示了vector的基础架构设计,包括成员变量与迭代器实现、构造与析构函数、容量管理(reserve/resize)、元素操作(push_back/pop_back)以及运算符重载等内容。特别针对工程实践中的关键难点——迭代器失效问题,给出了内部和外部迭代器失效的解决方案,并通过图解方式深入分析了失效原因。最后通过现代C++特性优化了代码结构,提供了完整的vector容器实现方案,为理解STL容器设计思想提供了实践参考。
vector容器详解[源码]
本文详细介绍了C++中的vector容器,包括其基本概念、使用方法及常见问题。vector是一种可变大小的数组序列容器,采用连续存储空间存储元素,支持高效的下标访问和动态大小调整。文章深入探讨了vector的增删查改操作、迭代器失效问题及解决方法,并提供了模拟实现的代码示例。此外,还介绍了vector在动态二维数组中的应用,如杨辉三角的实现,并列举了相关的OJ题目供练习。通过本文,读者可以全面掌握vector的使用技巧和底层实现原理。


