当前位置: 首页 > news >正文

C++基础知识

目录

C++的基本使用

C++数据的输入与输出

C++使用命令行

具体案例

C++生成随机数

关键字

标识符命名规则

数据类型

整形

实型(浮点型)

浮点型变量分为2种

表示小数的两种方式

案例演示

字符型

案例演示

字符串类型

两种风格

两种风格字符串之间的差异

布尔数据类型

bool类型只有两个值

C++的基本使用

C++数据的输入与输出

输入语法:cin >> 变量;

输出语法:cout << 输出内容 << endl;

C++使用命令行

暂停功能:system("pause");

清屏功能:system("cls");

注意:

  • 输出语法中的endl的作用为换行
  • 使用命令行功能时必须要引入头文件#include<iostream>
  • 使用输入与输出语法时,应在开头加using namespace std;并引入头文件#include<iostream>

具体案例

#include<iostream>
using namespace std;
void main() 
{
	int a = 0;
	cout << "请输入a的值:" << endl;
	cin >> a;
	cout << "a的值为:" << a << endl;
    system("cls");
	system("pause");
}

C++生成随机数

#include<iostream>
#include<ctime>
using namespace std;
void main() 
{
	//添加随机数种子(使用当前不断变化的时间生成随机数,防止每次随机数都一样)
	//time()对应库函数#include<ctime>
	srand((unsigned int)time(NULL));
	//rand()代表任意的随机数
	int a = rand();
	//代表100以内的随机数
	int num = a % 100 + 1;
	//对应using namespace std;与#include<iostream>
	cout << num << endl;
	//主要起到一个暂停功能(对应库函数#include <iostream>)
	system("pause");
}

关键字

含义:C++关键字是C++中预先保留的单词

注意:在定义变量或者常量的时候不要使用关键字,否则会产生歧义

标识符命名规则

含义:C++规定给标识符命名时,有一套自己的规则

  • 标识符不能是关键字
  • 标识符仅能由字母数字下划线组成
  • 标识符不能以数字开头
  • 标识符中的字母区分大小写

注意:在给标识符命名时,争取做到见名知意的效果,方便自己和他人的阅读

数据类型

前言:C++规定在创建一个变量或者常量时,必须要指定出相应的数据类型,否则无法给变量分配内存

整形

作用:整型变量表示的是整数类型的数据

注意:C++中能够表示整数类型有以下几种方式,区别在于所占内存空间不同

实型(浮点型)

作用:用于表示小数

浮点型变量分为2种

  • 单精度:float
  • 双精度:double

表示小数的两种方式

  • 直接用小数点表示:3.14
  • 科学计数法表示:314e-2 

案例演示

#include <iostream>
using namespace std;
int main() 
{
	float f = 3.1415926f;
	float f1 = 233e-2;
	cout << "f的值为:" << f << endl;
	cout << "f1的值为:" << f1 << endl;
	double d = 3.1415926;
	cout << "d的值为:" << d << endl;
	//最终结果都为3.14159
	system("pause");
	return 0;
}

注意:

  • 若表示一个小数,那么默认的类型为双精度,若表示一个整数,默认的类型为int类型
  • 默认情况下,输出一个小数会显示6位有效数字

字符型

作用:字符型变量用于显示单个字符

语法:char ch= 'a';

注意:

  • 在显示字符型变量时,用单引号将字符括起来,不要用双引号
  • 单引号内只能有一个字符,不能是字符串
  • C和C++中字符型变量只占有一个字节
  • 字符型变量并不是把字符本身放到内存中储存,而是将对应的ASCII码放入到储存单元

案例演示

#include <iostream>
using namespace std;
int main() 
{
	int a = 98;
	int a1 = 'b';
	char b = 98;
	char b1 = 'b';
	cout << "a的值为:" << a << endl;//98
	cout << "a1的值为:" << a1 << endl;//98
	cout << "b的值为:" << b << endl;//b
	cout << "b1的值为:" << b1 << endl;//b
	system("pause");
	return 0;
}

注意:本质上字符的储存就是将字符对应的ASCII码存到内存中,若以int类型接收得到的就是int类型数据,若以char类型接收,得到的就是char类型数据

字符串类型

作用:用于表示一串字符

两种风格

  • C风格字符串:char str[]="hello world";
  • C++风格字符串:string str="hello world";

两种风格字符串之间的差异

#include<iostream>
using namespace std;
void main() {
	string str1 = "hello world";
	//成功,string类型可以直接为整个数组赋值
	str1 = "你好,世界";
	//打印:你好世界
	cout << str1 << endl;
	char str2[] = "hi C++";
	//失败,char数组不可以直接为数组赋值
	str2 = "你好,C++";
	//报错
	cout << str2 << endl;
}

结果:string类型的字符串可以对整个字符串进行修改,而char数组的字符串不能对整个字符串进行修改,只能对该字符串内的字符进行逐个修改

布尔数据类型

作用:布尔数据类型代表真或假的值

语法:bool flag=true;

bool类型只有两个值

  • true:真(本质上是1,但是非0也代表真)
  • false:假(本质上是0)

注意:bool数据类型占1byte的大小

#include <iostream>
using namespace std;
void main() 
{
	bool flag = true;
	cout << "true值为:" << flag << endl;//1
	flag = false;
	cout << "false值为:" << flag << endl;//0
	system("pause");
}

相关文章:

  • 解决mybatis plus 中 FastjsonTypeHandler无法正确反序列化List类型的问题
  • Linux使用Clash,clash-for-linux
  • 电脑上如何多开微信软件(多个微信同时使用)
  • 判断当前环境是否为docker容器下
  • 【C#】命名规范
  • CSS 常用元素属性
  • ArcGIS Runtime For Android开发之符号化和图层渲染
  • Kafka安全模式之身份认证
  • HashMap学习
  • Redis实现滑动窗口限流
  • 2023最新盲盒交友脱单系统源码
  • NVIDIA的RTX 500和1000系列专业Ada世代笔记本GPU,让你随时随地享受AI增强的工作流程
  • csdn月入过万的作者是如何练成的?
  • Linux实现文件定期本地备份/异地备份/删除备份的脚本
  • 掌握这十个Linux命令,秒变Linux老手
  • 浅谈SQL Server索引视图(物化视图)以及索引视图与查询重写
  • 排查Linux服务器是否被入侵步骤
  • 聚观早报 | 推特临时培训员工应对世界杯;世界杯足球内置传感器
  • java单例模式--懒汉式、饿汉式(第二次学习)
  • 你真的了解Spring的依赖查找吗?
  • Git项目Readme.md文件编写格式与语法
  • 《精通Neo4j》前言
  • 【安全学习】记一次内网环境渗透
  • HDU中的贪心算法
  • 【Hack The Box】Linux练习-- OpenAdmin
  • 最新科目一攻略(新规)
  • 全球与中国羽绒服行业规模预测及投资策略研究报告2022-2028年
  • SparkRDD详解
  • Python项目一:pygname
  • 数据库的三级模式和二级映像
  • 【Hack The Box】linux练习-- Mango
  • Scientific Reports|比较转录组分析揭示了杀菌剂氰烯菌酯对尖孢镰刀菌的抗性调控机制和杀菌活性