从C到C++

简介: 从C到C++

1、输入输出库与名字空间

每次写代码先把这两个东西加上

<iostream>是一个库,叫输入输出库

我们后面使用的cin、cout都是iostream库中,std名字空间下的一个对象

使用名字空间是为了区分同名符号,避免同名歧义


非常的形象

2、输入输出流对象cin和cout

“<<”是流插入运算符

用法:std::cout<<要输出的内容;

“>>”是流提取运算符

用法:std::cin>>要输入的内容;

当我们在程序开头加上了using namespace std;

就可以省略掉std::直接这样写 cin>>要输入的内容; cout<<要输出的内容;


先看一个例子

#include <iostream>
using namespace std;
int main()
{
  int a, b;
  cin >> a >> b;
  cout << a << "+" << b << "=" << a + b;
  return 0;
}

可以看到没有任何问题

但是我们如果去掉using namespace std;  直接报错

加上std::又可以了,很显然我们直接在开头加using namespace std; 更方便简化后面写代码

OK,通过上面一个简单求两个数相加的例子 ,我们已经知道了cin、cout的用法

3、string字符串类

string类是C++的字符串类,提供(封装)了很多工具(成员方法)供使用

同样我们先看一个例子

#include <iostream>
using namespace std;
int main()
{
  string s = "ABCDE"; //定义一个字符串类变量s,值初始化为ABCDE
  s[2] = 'c'; //访问2这个位置的元素,将它变成小写的c,注意是从0开始,所以2对应第三个元素
  cout << s << endl;  //输出修改后的s
  cout << s.length() << endl; //输出字符串s的长度
  s.append("123"); //给字符串s追加内容“123”
  cout << s << endl; //输出追加后的s
  s.clear(); //将字符串s内容清空,变为空字符串
  cout << s; //输出清空后的s
}

点(“.”)表示调用对象的成员方法

用法:对象.函数()

比如 s.length()

变量(对象)s的一个工具(成员方法),length()是返回它的长度

endl就是换行,相当于'\n'

运行结果:

4、bool类型

取值只能为true或false

储存本质是单字节无符号整数1或0

(注意只要是非0即为true,输出也为1)

看例子

#include <iostream>
using namespace std;
int main()
{
  bool a = true;
  if (a) {
    cout << a;
  }
  return 0;
}

运行结果:

输出为1

常考的是逻辑运算

#include <iostream>
using namespace std;
int main()
{
  bool a = true, b = !a;
  if (a && b) {
    cout << "yes";
  }
  else {
    cout << "no";
  }
}

运行结果:

输出no

5、自增++自减--运算符(必考)

分两种

前自增自减(++a,--a):先自增自减,后执行表达式

后自增自减(a++,a--):先执行表达式,后自增自减

我们来看个例子就明白了

#include <iostream>
using namespace std;
int main()
{
  int a=1, b;
  b = a++;
  cout << a << endl << b;
}

这里是后自增,则会先执行表达式,将a的值赋给b,a再自增

运行结果:

输出a是2,b是1

#include <iostream>
using namespace std;
int main()
{
  int a=1, b;
  b = ++a;
  cout << a << endl << b;
}

这里则是前自增,a先自增为2,再赋值给b

运行结果:

可以看到输出a和b都为2

6、其他

C++兼容C语言,且是向下兼容,反过来就不对了

C++编译器能编译C语言和C++源代码

目录
相关文章
|
人工智能 Java 测试技术
本地玩转 DeepSeek 和 Qwen 最新开源版本(入门+进阶)
本文将介绍如何基于开源工具部署大模型、构建测试应用、调用大模型能力的完整链路。
2354 122
|
存储 人工智能 安全
【实测分享】本地AI工具AiPy更新版本v0.1.28
AiPy是一款出色的本地AI工具,2025年5月21日发布v0.1.28版本。它以本地化处理保障数据隐私,新增Trustoken联网搜索、云端私密存储等功能,支持多模型选择如阿里Qwen与腾讯Hunyuan,优化任务处理逻辑,提升效率。操作便捷升级,新老用户均可轻松上手。未来还将推出GUI客户端2.0等新功能,值得期待!(下载地址:https://www.aipyaipy.com/#download)快来体验吧!
【实测分享】本地AI工具AiPy更新版本v0.1.28
|
开发工具 iOS开发
如何导出iPhone手机中app共享文件夹的文件与闪退日志的收集
如何导出iPhone手机中app共享文件夹的文件与闪退日志的收集
643 1
|
Shell Linux 开发工具
三招教你轻松扩展 git bash 命令(上)(二)
GitBash 是 Windows 系统安装 Git 时默认集成的命令行工具,提供运行 Git 命令的集成环境.
三招教你轻松扩展 git bash 命令(上)(二)
|
消息中间件 弹性计算 运维
青团社:基于云原生技术打造行业领先的兼职平台
近些年来,随着云原生技术的不断发展和成熟,越来越多的企业正在拥抱云原生技术来构建自己的业务系统。以青团社旗下的青团兼职平台为例,应用已经基于Spring Cloud框架全面实现了微服务化,并部署运行在阿里云平台。但随之而来也引入了一些额外的需求及问题需要解决!
3425 110
 青团社:基于云原生技术打造行业领先的兼职平台
|
编解码 大数据 定位技术
遥感数据、气象数据、土地土壤数据、农业数据、行政区数据...GIS数据获取网站整理
遥感数据、气象数据、土地土壤数据、农业数据、行政区数据...GIS数据获取网站整理
2732 2
|
Shell
在Mac下为终端设置快捷键
在Mac下快速调出终端的方法是:为终端添加一个快捷键打开方式
676 0
|
存储 编解码 开发框架
iOS 音视频编解码基本常识与开发
内容元素: 封装容器: MP4/MOV/FLV/RM/RMVB/AVI 图像(Image) ⾳频(Audio) 编码格式: Video: H264 Audio: AAC 元信息(Metadata)
1183 0
iOS 音视频编解码基本常识与开发
|
XML JSON 监控
种草推荐Zookeeper客户端
种草推荐Zookeeper客户端
547 0
阿里云推出SRT+杜比全景声直播方案,低成本打造高质量直播观感体验
超过200个国家和地区共5144万人观看;浙江卫视、东方卫视55城总收视达2.39,稳居同时段市场第一;优酷直播间63%观看晚会的用户参与了互动;微博68.2亿的主话题阅读量;2019天猫双11狂欢夜(下简称“猫晚”),又一次创造了奇迹。
8425 0