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 面试问题, ...
随机推荐
- UEditor的KityFormula在IIS中部署,显示不了的解决方案
在此,首先感谢我的同事,找到了问题所在. 因Web项目中需要有输入公式的功能(高等数学中需要),普通公式插件无法满足,所以找了KityFormula这款插件. 看了下里面的公式,在数学方面确实比较全面 ...
- 文件操作,Io流。
private void textBox1_TextChanged(object sender, EventArgs e) { } private void button1_Click(object ...
- 一步步实现自己的ORM(三)
章节列表: <一步步实现自己的ORM(一)> <一步步实现自己的ORM(二)> 通过前面两篇文章,我们大致了解了ORM的基本原理,是通过Attribute+反射获取表的基本信息 ...
- lnmp.org + phpstorm + xdebug
lnmp.org下载安装包安装之: lnmp是个集成安装包,就不用自己在配置lnmp环境 安装phpstorm,破解方法:注册服务器为http://idea.lanyus.com 就可以了 xdebu ...
- AJPFX关于collection总结
Collection接口是该层次结构的根接口,该接口的所有子接口或实现子类集合都可以用Iterator迭代器进行取出.Collection有两个常见子接口,即为List和Set,其中List集合可以用 ...
- How To Install and Secure phpMyAdmin on Ubuntu 12.04(MySQL图形管理)
原文参考链接:https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-phpmyadmin-on-ubun ...
- Linux下的I/O复用
读书笔记 I/O复用使得程序能同时监听多个文件描述符,这对提高程序的性能至关重要. Linux下实现I/O复用的系统调用主要有select, poll, epoll. select: 用户通过3个参数 ...
- Selenium私房菜系列9 -- 我遇到的问题及解决问题的方法
Selenium私房菜系列10 -- 我遇到的问题及解决问题的方法
- ZendStudio 常用快捷键大全
应用场景 快捷键 功能 查看快捷键 ctrl+shift+l 显示所有快捷键列表 查看和修改快捷键 打开Window->Preferences->General->keys 修改 ...
- 79 最长公共子串 (lintcode)
f[i][j]表示的是以第i个结尾和第j个结尾 class Solution { public: /* * @param A: A string * @param B: A string * @ret ...