浅谈c++(一)
本人为菜鸟一枚,如有错误,欢迎指正。
由于上半年学了C语言,为了更好的过渡到C++,我将在未来展示一下两者的不同以及优缺点。在c++中,不得不谈到类。这是C++中最重要的语法特征。我们可以通过它,定义自己的数据类型。
而基于此,标准C++库实现了丰富的类和函数,极大的丰富了我们的使用。
在C中,如果想把字符串进行某些操作时,就必须先定义一个字符串数组。我也很清楚的记得老师说过,C++把C这个弊病解决了,当时有些疑惑,再看了C++后,终于明白这个东西是:标准库类型string。
下面是第一个示例:
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s1;//直接定义后即可,默认初始化,s1是个空串
cin>>s1; //输入
cout<<s1; //输出
}
在string中还有一些内置的函数:
getline(xx,s1) 从xx中读取一行赋给s1,返回s1。
s1.empty( ) s1为空,则返回true,否则返回false。
s1.size( ) 返回s1中的字符的个数。
s1[ n ] s中第n个字符的引用。
这里我想指明一下,这个size()其实也就是字符串的长度。不过这个得到的长度是没有后面的‘\0’。看一下下面的代码。
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s1="abcdefg";//这是7个
int number;
number = s1.size();
cout<<number;
}
这是结果:
如果你拿字符数组来写这段代码,结果为8。
在string中,另一个优点就是字符串相加更方便了。
int main()
{
string s1="hello";
string s2=" world";
s1 = s1+s2;
cout<<s1;
}
输出结果:
浅谈c++(一)的更多相关文章
- 浅谈 Fragment 生命周期
版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Fragment 文中如有纰漏,欢迎大家留言指出. Fragment 是在 Android 3.0 中 ...
- 浅谈 LayoutInflater
浅谈 LayoutInflater 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/View 文中如有纰漏,欢迎大家留言指出. 在 Android 的 ...
- 浅谈Java的throw与throws
转载:http://blog.csdn.net/luoweifu/article/details/10721543 我进行了一些加工,不是本人原创但比原博主要更完善~ 浅谈Java异常 以前虽然知道一 ...
- 浅谈SQL注入风险 - 一个Login拿下Server
前两天,带着学生们学习了简单的ASP.NET MVC,通过ADO.NET方式连接数据库,实现增删改查. 可能有一部分学生提前预习过,在我写登录SQL的时候,他们鄙视我说:“老师你这SQL有注入,随便都 ...
- 浅谈WebService的版本兼容性设计
在现在大型的项目或者软件开发中,一般都会有很多种终端, PC端比如Winform.WebForm,移动端,比如各种Native客户端(iOS, Android, WP),Html5等,我们要满足以上所 ...
- 浅谈angular2+ionic2
浅谈angular2+ionic2 前言: 不要用angular的语法去写angular2,有人说二者就像Java和JavaScript的区别. 1. 项目所用:angular2+ionic2 ...
- iOS开发之浅谈MVVM的架构设计与团队协作
今天写这篇博客是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇博客的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦 ...
- Linux特殊符号浅谈
Linux特殊字符浅谈 我们经常跟键盘上面那些特殊符号比如(?.!.~...)打交道,其实在Linux有其独特的含义,大致可以分为三类:Linux特殊符号.通配符.正则表达式. Linux特殊符号又可 ...
- 浅谈Angular的 $q, defer, promise
浅谈Angular的 $q, defer, promise 时间 2016-01-13 00:28:00 博客园-原创精华区 原文 http://www.cnblogs.com/big-snow/ ...
- 浅谈Hybrid技术的设计与实现第三弹——落地篇
前言 接上文:(阅读本文前,建议阅读前两篇文章先) 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 根据之前的介绍,大家对前端与Native的交互应该有一些简单的认识了,很多 ...
随机推荐
- Excel提取身份证出生日期②
问题场景 从user表中的身份信息中提取用户的出生日期: 以下方法也可适用于提取其他数据,不仅是身份证信息: 以下图中数据都为测试数据,不具备真实性! 场景一 user表中的18位身份证,提取出生日期 ...
- Ubutun重启网卡
一.network利用root帐户# service networking restart 或者/etc/init.d/networking restart 二.ifdown/ifup# ifdown ...
- 用Springboot+Jpa实现学生CRUD操作(含前端页面,含分页,自定义SQL)
前期准备 使用idea新建个SpringBoot项目 参考博客:https://blog.csdn.net/Mr_Jixian/article/details/89742366?tdsourcetag ...
- 企业网站SEO如何选择关键词
http://www.wocaoseo.com/thread-17-1-1.html 企业网站的关键词应该如何去选择?有很多的企业老板在网上某某企业在网上做了一个网站,一天盈利多少后,觉得 ...
- 热门话题,2020年了,web前端还好找工作吗?
#大师助手-全网唯一免费上pin 如果你要是和前几年的前端市场相比,那我会告诉你“不好找” 其实好不好找工作,是跟自己的能力分不开的.但是就前端开发这个行业本身来说,它的就业前景还是相当不错的. 随着 ...
- 安装oracleXE快捷版(二)
-bash-3.2$ 是oracle用户下的提示符 [root@localhost ~]# 是root用户下的提示符 #用root去修改oracle用户的密码123456[root@localhost ...
- Android开发之使一打开activity等界面Edittext获取焦点,弹出软键盘java代码实现
// 获取编辑框焦点 editText.setFocusable(true); //打开软键盘 IInputMethodManager imm = (InputMethodManager)getSys ...
- Fitness - 05.23
倒计时222天 运动40分钟,共计8组,4.2公里.拉伸10分钟. 每组跑步3分钟(6.5KM/h),走路2分钟(5.5KM/h). 终于赶在姨妈前完成第3周的跑步训练了,可喜可贺~~ 下周预计要休息 ...
- Spine学习二 -播放Spine动画
要想播放一个Spine动画,必须要在一个物体上绑定一个Spine播放的组件,这里暂时使用SkeletonAnimation组件. 然后就是编写动画的控制脚本. 这里提一个特性: [SpineAnima ...
- vue学习笔记一
vue 颠覆式的开发方式 解疑 为什么要学习vue? 降低项目的复杂度 就业需要 vue难不难? 特别简单 相比于React,vue有什么优势? 前端三大框架:Angular.React.Vue Vu ...