C++基础(语句、函数、类,基本类型、运算符)

本文围绕 C++ 展开,介绍了基本概念,如语句、块、域和注释;详细阐述了各类语句,包括基本语句、复合基本语句、条件语句和循环语句;还提及函数、类、模版类,以及基本数据类型和运算符等内容,为学习 C++ 提供基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

 

基本概念

语句

注释

语句

基本语句

声明语句

赋值语句

调用语句

复合基本语句

声明赋值语句

赋值调用语句

声明赋值调用语句

条件语句

if-else语句

switch语句

循环(迭代)语句

for语句

while语句

do-while语句

函数、类、模版类

函数

模版类

基本数据类型

修饰符

整数类型族

浮点数类型族

字符类型族

运算符

大类优先级

算术运算符

逻辑运算符

自增自减运算符

访问控制运算符

内存运算符

位运算符

赋值类运算符

=

混合赋值运算符

其他运算符


基本概念

语句

给计算机一个命令的,分号结尾或引领一个域的一行。

多条或单条语句构成的语句群,常见的块有:域、switch语句分支。

以大括号包围的一个块,常见的域(从大到小)包括:命名空间、类、函数、循环体、判断体,亦可将任意语句用大括号包装成块。域的特点是限制了其中变量的作用范围(亦称生命周期),即一般在域外无法访问域内声明的变量。

注释

以双斜杠(//)引起的单行或以/**/包围的一行或多行,不是语句,计算机不会执行其中的命令。

语句

基本语句

声明语句

以分号结尾的,向编译器申请新的空间以保存变量的语句,结构为:

变量类型 变量名;

赋值语句

以分号结尾的,结构为:

变量名 = 新值;

调用语句

以分号结尾的一个函数的名字加括号,结构为:

函数名(参数列表);

复合基本语句

声明赋值语句

结构为:

变量类型 变量名 = 初始值;

赋值调用语句

结构为:

变量名 = 函数名(参数列表);

声明赋值调用语句

结构为:

变量类型 变量名 = 函数名(参数列表);

条件语句

if-else语句

以if(判断条件)、else if(判断条件)或else引起的,后接一个域的语句(当该域仅含一条语句,大括号可省去)。当判断条件成立时,执行域,否则,优先执行else部分。且若有嵌套的省去大括号的if语句,其后的else语句会在最近的if语句条件为假时执行。这三类判断语句的出现顺序必须同前文中提到他们的先后顺序相符。

结构为:

if(条件命题1)

    单条语句或域

else if(条件命题2)

    单条语句或域

else

    单条语句或域

switch语句

结构为:

switch(条件变量名){

case 条件值:

    语句块

    break;

default:

    break;

}

循环(迭代)语句

以for(){}、while(){}、do{}while()引起的,大括号中为循环体(当该域仅含一条语句,大括号可省去)。这三类语句起到的功能近似,都是在圆括号内条件成立时,重复执行循环体。

for语句

例:

for(int i=0;i<10;++i)

    单条语句或域

while语句

例:

while(循环命题)

    单条语句或域

do-while语句

do-while语句在判断圆括号内条件前会先执行一次循环体,并且其while的圆括号后应加分号。

例:

do

    单条语句或域

while(循环命题);

函数、类、模版类

函数

一个具有返回值类型、名字、参数,用于完成一个目的或返回一个值的域。其中,主函数特指名字为main的函数,一个程序中仅能有一个主函数,并且系统执行程序时会自动调用主函数。

例1:

void print(char* sentence){
    cout<<sentence<<endl;
}

例2:

int add(int addend, int summand){
    int sum = addend + summand;
    return sum;
}

以class 类名引起的一个域,其中包含该类的一些函数与变量。

例:

class human{
public:
    int x;
    int y;
    void walk(int x_, int y_){
        x += x_;
        y += y_;
    }
protected:
private:
}

模版类

待更新

基本数据类型

修饰符

符名作用
unsigned被修饰变量非负
const被修饰变量值不可变更

整数类型族

类型名字节数
short2
int2或4
long4或8
long long8

浮点数类型族

类型名指数位精度位
float823
double1152

 

字符类型族

待更新

运算符

大类优先级

注意:本文并不列出具体运算符优先级,建议了解大类优先级后自行进一步了解,并避免使用包含不确定优先级的语句。

运算符类别优先级
访问控制运算符top,0
括号类运算符1
自增/减、类型转换、位运算、内存运算符、noexcept2
算术运算符,移位运算符3
逻辑运算符、其他位运算符、条件运算符4
赋值类运算符5
逗号运算符、throwbottom,6

算术运算符

符号作用
+表示正数
-表示负数
+返回前后变量之和
-返回前后变量之差
*返回前后变量之积
/返回前后变量之商
%返回前变量除以后变量的余数

逻辑运算符

符号作用
!逻辑非
&&逻辑与
||逻辑或
>返回命题“左变量大于右变量”的真假
>=返回命题“左变量大于等于右变量”的真假
<返回命题“左变量小于右变量”的真假
<=返回命题“左变量小于等于右变量”的真假
==返回命题“左变量等于右变量”的真假
!=返回命题“左变量不等于右变量”的真假

自增自减运算符

符号作用
++i变量i增大1,返回增大后的i
i++变量i增大1,返回增大前的i
--i变量i减小1,返回减小后的i
i--变量i减小1,返回减小前的i

访问控制运算符

符号用法作用
.item.var指定对象item的变量var
->pointer->var指定指针pointer指向的变量var
::namespace::item指定某个可访问域的对象item

内存运算符

符号作用
sizeof给出类型所占内存字节数
new、new[]创建堆对象或堆对象数组
delete、delete[]释放堆对象或堆对象数组
*解引用
&取地址

位运算符

符号含义左值右值结果
~取反10
&101011011000
|101011011111
^异或101011010111
>>右移1001 010130001 0010
<<左移1001 010131010 1000

赋值类运算符

=

将右值赋给左变量

混合赋值运算符

=可和五种算术运算符和五种位运算符混合使用(仅取反运算符~不能与=一起使用)。

其他运算符

运算符名称示例
?条件运算符表达式?值1:值2
,逗号运算符值或表达式1,值或表达式2
noexcept无异常运算符noexcept(expr);
throw抛出异常throw exception;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值