C++语法入门:变量、数据类型、运算符和控制流程

发布时间:2023-05-17

C++语法入门

作为一门重要的计算机语言,C在现代编程中扮演着重要的角色。C具有高效、灵活性、跨平台、面向对象等优点,被广泛应用于软件、游戏、操作系统等领域。在学习C编程语言时,需要了解C的基础知识,如变量、数据类型、运算符和控制流程等。

一、变量

C中的变量是用于存储数据值的一种方法。在C中,您需要先声明(创建)变量,然后才能使用它。语法:

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

例如:

int a = 10;
double b = 3.14;

变量名是您将要使用的变量的名称。变量名可以由字母、数字和下划线字符组成。变量名必须以字母或下划线字符开头。变量名区分大小写。 在C++中,您也可以使用赋值运算符(=)设置变量的值:

a = 15;
b = 2.71;

C支持多种数据类型的变量,可以按需使用。下面我们来详细介绍C的数据类型。

二、数据类型

C++语言提供了多种数据类型,包括整型、浮点型、字符型、布尔型、指针型、数组、结构体、类等。下面我们对常用的数据类型进行详细介绍。

1. 整型

整型变量用于存储整数。C++提供了不同大小的整型变量,可以根据需要选择使用。 常用的整型数据类型:

  • short int:占2个字节,范围-32768 ~ 32767
  • int:占4个字节,范围-2147483648 ~ 2147483647
  • long int:占4个字节或8个字节,范围-2147483648 ~ 2147483647或-9223372036854775808 ~ 9223372036854775807
  • unsigned int:占4个字节,范围0 ~ 4294967295
  • unsigned long int:占4个字节或8个字节,范围0 ~ 4294967295或0 ~ 18446744073709551615

2. 浮点型

浮点型变量用于存储实数。C++提供了两种浮点型数据类型:floatdouble

  • float:占4个字节,范围约为-3.4E38 ~ 3.4E38,精度约为7位小数
  • double:占8个字节,范围约为-1.7E308 ~ 1.7E308,精度约为15位小数

3. 字符型

字符型变量用于存储单个字符。在C++中,字符型变量必须用单引号包括。例如:

char c = 'a';

4. 布尔型

布尔型变量用于存储真或假的值。C++中的布尔型数据类型是 bool,只能取 truefalse 两个值。

5. 指针型

指针变量用于存储内存地址。在C++中,指针变量必须用星号(*)进行定义。例如:

int *ptr;

定义了一个名为 ptr 的指针变量,可以存储一个整型变量的地址。

6. 数组

C中的数组是一组相同类型的数据存储在连续的内存位置上。在C中,数组也是一个变量,数组名称是第一个元素的地址。 定义一个数组:

int arr[5] = {1, 2, 3, 4, 5};

数组用方括号表示,花括号中的数字分别表示数组中每个元素的值。对于上面的定义,arr[0] 的值为 1,arr[1] 的值为 2,以此类推。

7. 结构体

结构体是一种由不同数据类型的变量组成的数据类型。在C++中,结构体使用关键字 struct 进行定义。

struct Person {
  char name[20];
  int age;
  double salary;
};
Person p1 = {"Mike", 25, 5000.0};

定义了一个名为 Person 的结构体,包括字符串类型的 name、整型类型的 age 和双精度浮点型类型的 salary。对于上面的定义,p1.name 的值为 "Mike"p1.age 的值为 25,p1.salary 的值为 5000.0。

8. 类

类是一种包含函数和变量的数据类型,是面向对象编程的核心概念。在C++中,类使用关键字 class 进行定义。

class Circle {
  private:
    double radius;
  public:
    Circle(double r) {
      radius = r;
    }
    double area() {
      return 3.14 * radius * radius;
    }
};
Circle c(5.0);
double a = c.area();

定义了一个名为 Circle 的类,包括一个私有成员变量 radius 和两个公有成员函数构造函数和求圆面积的函数 area。对于上面的定义,实例化一个半径为 5.0 的 Circle 对象 c,调用 c.area() 函数可以得到圆的面积。

三、运算符

运算符是一种用于执行数学、逻辑或比较操作的符号。在C++中,常用的运算符有算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符等。

1. 算术运算符

算术运算符用于执行算术操作,如加、减、乘、除、取模等。

  • +:加
  • -:减
  • *:乘
  • /:除
  • %:取模(求余数)

2. 赋值运算符

赋值运算符用于将右边的值赋给左边的变量。

  • =:赋值
  • +=:加并赋值
  • -=:减并赋值
  • *=:乘并赋值
  • /=:除并赋值
  • %=:取模并赋值

3. 比较运算符

比较运算符用于比较两个值的大小关系,返回 truefalse

  • ==:等于
  • !=:不等于
  • <:小于
  • >:大于
  • <=:小于或等于
  • >=:大于或等于

4. 逻辑运算符

逻辑运算符用于执行逻辑操作,如与、或、非等。

  • &&:与运算符,返回 true 当且仅当两个表达式都为 true
  • ||:或运算符,返回 true 当且仅当两个表达式至少有一个为 true
  • !:非运算符,返回 true 当且仅当表达式为 false

5. 位运算符

位运算符作用于二进制位,包括按位与、按位或、按位异或、按位取反等。

  • &:按位与,对应位都为 1 则结果为 1
  • |:按位或,对应位有一个为 1 则结果为 1
  • ^:按位异或,对应位不同则结果为 1
  • ~:按位取反,对应位取反
  • <<:左移位,将二进制数左移指定位置
  • >>:右移位,将二进制数右移指定位置

四、控制流程

控制流程用于控制程序的执行顺序。C++语言提供了各种控制流程语句,包括分支语句和循环语句。

1. 分支语句

C中的分支语句用于根据条件执行不同的代码。C提供了 if 语句、if-else 语句、if-else-if 语句、switch 语句等分支语句。

if (条件1) {
  // 如果条件1成立,执行代码1
} else if (条件2) {
  // 如果条件2成立,执行代码2
} else {
  // 如果以上条件都不成立,执行代码3
}
switch (表达式) {
  case 值1:
    // 如果表达式的值等于值1,执行代码1
    break;
  case 值2:
    // 如果表达式的值等于值2,执行代码2
    break;
  default:
    // 如果表达式的值不等于以上值,执行代码3
}

2. 循环语句

C中的循环语句用于重复执行某个代码块。C提供了 for 语句、while 语句、do-while 语句等循环语句。

for (初始化表达式; 循环条件; 更新表达式) {
  // 循环体
}
while (循环条件) {
  // 循环体
}
do {
  // 循环体
} while (循环条件);

以上是C语法入门的基础知识。掌握这些内容可以让您开始编写简单的C程序。随着继续深入学习,您将学习更高级的概念和技术,如函数、类、模板、STL等。让我们一起探索C++语言的奥秘吧!