C++ char数组和string类简单使用总结
使用char数组,进行字符串的操作,是c风格的操作方式。
string是C++的风格,感觉string本质上就是一个vector<char>
以下代码详细展示了字符串的常见操作
#include <iostream>
#include <string> // make string class available
//#include <cstring> // C-style string library
int main()
{
using namespace std; //char数组的用法
char charr1[];
int num1 = strlen(charr1);//没有初始化的char数组,长度是未知的,原因是需要遇到‘\0’才结束 char charr2[] = "lilei,nihao";//编译器会自动计算长度
char charr3[] = "lilei,nihao";
int goodFrameCount = ;
sprintf_s(charr3, "chess%d.jpg", goodFrameCount);//这种用法重点学习
int num2 = strlen(charr3);//num2=12,strlen函数只计算可见的字符
int num3 = sizeof(charr3); //num3=100,sizeof计算整个数组的长度 char charr4[];
//cin >> charr4;//注意两点:1、遇到空格,认为结束;
//cout << charr4 << endl; //2、当输入的字符串长度超过charr4的长度时,也是可以显示出来的,但不推荐使用 cin.getline(charr4, ); // indicate maximum length,此种方法就可以输入包含空格的字符串了
cout << charr4 << endl; char charr5[];
char charr6[] = "jaguar";
strcpy_s(charr5, charr6);//赋值操作, charr6内容赋值给charr5
strcat_s(charr5, " juice");//添加到末尾 //string类的用法
//string类,感觉本质上讲,就是一个vector<char>
string str;
int number1 = str.size();//计算个数,未初始化时,个数为0,区别于char数组 //cin >> str;
//cout << str << endl;//同样存在的问题,字符串之间不能够有空格,空格就意味着‘\0’结束的标志 getline(cin, str);
cout << str << endl;//就可以输入含空格的字符串了 string s1 = "penguin";
string s2, s3;
s2 = s1;//string的赋值简单多了
s2 = "buzzard";
s3 = s1 + s2;//字符串合并
s1 += s2;//将字符串s2添加到s1的末尾,s1的内容发生了改变
s2 += " for a day";//同样是加到s2的末尾 return ;
}
C++ char数组和string类简单使用总结的更多相关文章
- char数组与string转换
1.char数组转string 有很多种方法: 假设c字符串定义为char ch[]="hello world!"; 1.向构造函数传入c字符串创建string对象: string ...
- delphi char数组、string和Pchar的相互转换
因为要调用windows的api或者给vc++写接口,很多地方都要用到pchar,现在将char数组.string和pchar之间的相互转换都列出来,都是网上找的资料,我总结一下,先直接上代码,再讲原 ...
- Java第二次作业——数组和String类
Java第二次作业--数组和String类 学习总结 1.学习使用Eclipse关联jdk源代码,查看String类的equals()方法,截图,并学习其实现方法.举例说明equals方法和==的区别 ...
- Java中字符数组、String类、StringBuffer三者的相互转换
一.StringBuffer与String的相互转换 1.将StringBuffer转换成String StringBuffer类成员toString函数可将其转换成String类型. StringB ...
- char数组和String互转
char ch[100];string str; 把char*(c类型的string)数组转换为string:str = ch; //即可str.assign(ch); //也可 把string类型转 ...
- 关于Java的对象、数组、String类的具体用法
对象的行为: 1.内存分配(栈和堆的区别) 栈:保存局部变量的值(用来保存基本数据类型的值:保存类的实例的引用) 对:用来存放动态产生的数据,比如new出来的对象 2.调用方法 方法返回一个值.方法不 ...
- 包装类、数组、string类浅析及练习
String s1 = "abc"; String s2 = "abc"; System.out.println(s1==s2); //返回true Strin ...
- Java第二次作业--数组和String类
Deadline: 2017-3-28 23:00 一.学习要点 认真看书并查阅相关资料,掌握以下内容: 掌握基本数据类型和引用数据类型的区别 理解对象的生成与引用的关系 掌握构造方法的重载 掌握St ...
- 为什么 char 数组比 String 更适合存储密码?
推荐阅读:5 个刁钻的 String 面试题! 另一个基于 String 的棘手 Java 问题,相信我只有很少的 Java 程序员可以正确回答这个问题. 这是一个真正艰难的核心 Java 面试问题, ...
随机推荐
- android开发学习 ------- 【转】 android中的单例模式 (详解)
https://blog.csdn.net/u011418943/article/details/60139644 这篇文章 前因后果 都说出来了 ,值得学习. https://blog.cs ...
- 用vue.js重构订单计算页面
在很久很久以前做过一个很糟糕的订单结算页面,虽然里面各区域(收货地址)使用模块化加载,但是偶尔会遇到某个模块加载失败的问题导致订单提交的数据有误. 大致问题如下: 1. 每个模块都采用usercont ...
- 导入动态Web项目到Eclipse中遇到的问题
问题一:创建动态网页项目时,项目报错而无文件报错 当时解决方法:直接右击项目->properties->project facets将jdk改为1.8版本即可 如图: 问题二:Tomcat ...
- Java程序流程控制之if-else if-else
java基础之流程控制(一) 流程控制 Flow Control : 流程控制语句是编程语言中的核心之一.可以分为 分支语句.循环语句和跳转语句. 本讲内容包括分支语句 ...
- vs2010调试sql2008存储过程
1.安装vs2010sp1补丁 2.vs中打开服务器资源管理器,并进行数据库连接,连接时要注意 3. 4.可以打开数据库中的存储过程进行调试了
- 不同版本的 Tomcat 设置用户名密码 的方法
Tomcat : tomcat根目录\conf\tomcat-users.xml,找到 <tomcat-users> 标签,在后面添加 <user username="ad ...
- css3 省略号
overflow: hidden; text-overflow: ellipsis; white-space: nowrap; 也无需给元素设置固定宽度!
- file-leak-detector(文件句柄泄漏)在JDK1.6环境下 weblogic 和 tomcat安装方式以及使用方式
file-leak-detector作者博客详见: http://file-leak-detector.kohsuke.org/ file-leak-detector学习贴: https://blog ...
- centos7设置sshd端口,firewall,selinux设置
https://blog.csdn.net/qq_31927797/article/details/81095829 #停止firewallsystemctl stop firewalld.servi ...
- 二分查找算法java
二分查找又称折半查找,它是一种效率较高的查找方法. 折半查找的算法思想是将数列按有序化(递增或递减)排列,查找过程中采用跳跃式方式查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小于该中点元 ...