IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++基础--Day1 -> 正文阅读

[C++知识库]C++基础--Day1

标识符:

● 标识符不可以是关键字;
● 标识符是由字母、数字、下划线组成的;
● 标识的第一个字符只能是字母或者下划线
● 标识符区分大小写

数据类型

● 整型

数据类型占用空间
short(短整型)2字节
int(整型)4字节
long(长整型)windows中4字节
long long(长长整型)8字节

● sizeof 使用
○ 作用:统计数据类型所占空间的大小
○ 语法:sizeof(数据类型/变量)

#include <iostream>
using namespace std;
int main() {
    int num = 10;
    cout<<"int = "<<sizeof(int)<<endl;
    cout<<"int = "<<sizeof(num)<<endl;
    return 0;
}
/*
int = 4
int = 4
*/

● 实型(浮点型)
○ 作用:用于表示小数
○ 单精度:float
○ 双精度:double
○ 两种区别主要是范围上不同,float占4个字节,double占8个字节;
○ 科学计数法

#include <iostream>
using namespace std;
int main() {
    float f1;
    double d1;
    cout<<"float = "<<sizeof(f1)<<endl;
    cout<<"double = "<<sizeof(d1)<<endl;
    //科学计数法
    f1 = 2e2;
    cout<<"f1 = "<< f1 <<endl;
    return 0;
}
/*
float = 4
double = 8
f1 = 200
*/

● 字符型
○ charl类型
■ 作用:用于显示单个字符;
■ 语法:char ch = ‘c’;
■ c 和 c++ 中的字符型变量只占一个字节
■ 字符型变量并不是把字符本身放到内存中存储,而是将对应的ASCII编码放入到存储单元中。

#include <iostream>
using namespace std;
int main()
{
    char ch = 'a';
    cout<< ch <<endl;
    cout<<"char空间:"<<sizeof (char)<<endl;
    return 0;
}
/*
a
char空间:1
*/

○ 转义字符
■ 作用:用于表示一些不能显示出来的ASCII码
■ \n : 换行符
■ \ :反斜杠
■ \t : 水平制表符,用处很大(自动补齐后面并对齐)

#include <iostream>
using namespace std;
int main()
{
    //转义字符 \t 的使用
    cout<<"AA"<<"\t"<<"看这里"<<endl;
    cout<<"AAA"<<"\t"<<"看这里"<<endl;
    cout<<"AAAAAA"<<"\t"<<"看这里"<<endl;
    return 0;
}
/*
AA      看这里
AAA     看这里
AAAAAA  看这里
*/

字符串

//传统,c风格
char ch[] = "Hello World!";
//C++中(包含头文件<string>)
string str = "Hello World!"

● 布尔类型
○ 表示真或假(true/false)
○ 0->false ; 1->true;

运算符类型作用
算术运算符用于处理四则运算
赋值运算符用于将表达式的值赋给变量
比较运算符用于表达式的比较,并返回一个真值或者假值
逻辑运算符用于根据表达式的值返回真或假值

● 算术运算符
○ 前置++/–
○ 后置++/–

#include <iostream>
using namespace std;
int main()
{
    //前置
    int i = 0;
    cout<<"i++= "<<i++<<endl;
    cout<<"i= "<<i<<endl;
    cout<<"i--= "<<i--<<endl;
    cout<<"-----------"<<endl;
    //后置
    int j = 1;
    cout<<"++j= "<<++j<<endl;
    cout<<"j= "<<j<<endl;
    cout<<"j--= "<<--j<<endl;
    return 0;
}
/*
i++= 0
i= 1
i--= 1
-----------
++j= 2
j= 2
j--= 1
*/

程序流程结构

● 顺序结构
● 选择结构
○ if 条件句
○ switch 条件句
● 循环结构
○ while 语句
○ do while 语句
○ for 语句
● 三目运算符
○ 格式:表达式1 ? 表达式2 : 表达式3
○ 解释:表达式1为真,则返回表达式2;表达式1为假,则返回表达式3;

//
// Created by NJUST'er'wang's on 2022/1/10.
//
#include <iostream>
using namespace std;
int main()
{
    int a = 1,b = 2,c = 3;
    int ans1 = a > b ? a : b;
    cout<<"ans1 = "<< ans1 <<endl;
    int ans2 = a < b ? a : b;
    cout<<"ans2 = "<<ans2<<endl;
    cout<<"---------"<<endl;
    (a > b ? a : b) = 68;
    cout<<"a= "<<a<<endl;
    cout<<"b= "<<b;
    return 0;
}
/*
ans1 = 2
ans2 = 1
---------
a= 1
b= 68 //好玩的用法哟
*/

数组

● 位置:放在一块连续的内存空间中;
● 元素特点:数组中的每个元素都是相同的数据类型;
一维数组
● 格式:
○ 数据类型 数组名[数组长度];

int arr[3];

数据类型 数组名[数组长度] = {value1,value2,……};

int arr[3] = {1,2,3}; //如果value个数没有达到“数组长度”,则剩余空间用0填充

数据类型 数组名[] = {value1,value2,……,valuen};

int arr[] = {1,2,3,4,5,6,7,8,9,10};//数组长度为元素个数
//
// Created by NJUST'er'wang's on 2022/1/10.
//
#include <iostream>
using namespace std;
int main()
{
    //1.关于内存空间的占用
    int arr[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    cout<<"数组的空间:"<<sizeof(arr)<<endl;
    cout<<"每个元素所占空间的大小:"<<sizeof (arr[0])<<endl;
    cout<<"元素个数:"<<sizeof(arr) / sizeof(arr[0])<<endl;
    //2.查看数组地址
    cout<<"数组首地址:"<<arr<<endl;
    cout<<"数组第一个元素的地址:"<<&arr[0]<<endl;
    return 0;
}
/*
数组的空间:40
每个元素所占空间的大小:4
元素个数:10
数组首地址:0x59575ff6b0
数组第一个元素的地址:0x59575ff6b0
*/

冒泡排序

// Created by NJUST'er'wang's on 2022/1/10.
//冒泡排序

#include <iostream>

using namespace std;

int main() {
    int arr[] = {3, 2, 1, 4, 7, 5, 6};
    for (int i = 0; i < sizeof(arr) / sizeof(arr[0]) - 1; ++i) {
        for (int j = 0; j < sizeof(arr) / sizeof(arr[0]) - 1 - i; ++j) {
            if (arr[j] > arr[j + 1]) {
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
    for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); ++i) {
        cout << "arr[" << i << "]=" << arr[i] << ' ';
    }
    return 0;
}
/*
arr[0]=1 arr[1]=2 arr[2]=3 arr[3]=4 arr[4]=5 arr[5]=6 arr[6]=7
*/

二维数组

● 在一维之上多一维;
● 定义
○ 数据类型 数组名[row][col];

int arr[2][3];//2行3列

数据类型 数组名[row][col] = {{value1,value2},{value3,value4}};

int arr[2][3] =
{
    {1,2,3},
    {4,5,6}
};
//可读性高,很直观

数据类型 数组名[row][col] = {value1,value2,value3,value4};

int arr[2][3] = {123456};//可读性较低

数据类型 数组名[][col] = {value1,value2,……,valuen};

int arr[][3] = {9,8,7,6,5,4};//编译器自动推导行数,必须有列数
//
// Created by NJUST'er'wang's on 2022/1/10.
//二维数组
#include <iostream>
using namespace std;
int main()
{
    int arr[2][2] = {8,8,4,8};
    cout<<"二维数组首地址:"<<arr<<endl;
    cout<<"第一个元素地址:"<<&arr[0][0]<<endl;
    cout<<"二维数组占用空间:"<<sizeof (arr)<<endl;
    cout<<"二维数组每个元素占用空间:"<<sizeof(arr[0][0])<<endl;
    cout<<"二维数组元素个数:"<<sizeof (arr)/sizeof(arr[0][0]);
    return 0;
}
/*
二维数组首地址:0xa54b9ff690
第一个元素地址:0xa54b9ff690
二维数组占用空间:16
二维数组每个元素占用空间:4
二维数组元素个数:4
*/
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-01-11 23:48:36  更:2022-01-11 23:49:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 10:23:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码