C++基本语法
C++基本语法的详细介绍,涵盖了注释、标识符和关键字、数据类型、变量声明和初始化、常量、运算符以及输入输出等内容。
1. 注释
注释用于解释代码,不会被编译器执行。C++ 支持两种注释方式:
- 单行注释:使用
//
- 多行注释:使用
/* ... */
// 这是一个单行注释
/*
这是
一个多行
注释
*/
2. 标识符和关键字
- 标识符:用于命名变量、函数、类等。标识符必须以字母或下划线开头,后面可以是字母、数字或下划线。
- 关键字:C++ 中预定义的单词,具有特殊含义,不能用作标识符。
合法的标识符示例:
myVariable
_variable
variable123
非法的标识符示例:
1variable
(以数字开头)my-variable
(包含非法字符)
常见的关键字:
int
,double
,char
,bool
if
,else
,for
,while
class
,struct
,enum
public
,private
,protected
static
,const
,volatile
true
,false
new
,delete
return
3. 数据类型
C++ 提供了多种数据类型,包括基本数据类型和复合数据类型。
-
整型:
int
:通常为32位short
:通常为16位long
:通常为32位或64位long long
:通常为64位
-
浮点型:
float
:通常为32位double
:通常为64位long double
:通常为80位或128位
-
字符型:
char
:通常为8位wchar_t
:宽字符,通常为16位或32位
-
布尔型:
bool
:可以取值true
或false
4. 变量声明和初始化
变量用于存储数据。声明变量时需要指定其类型和名称,可以同时进行初始化。
int age = 25; // 声明并初始化一个整型变量
double height = 1.75; // 声明并初始化一个浮点型变量
char grade = 'A'; // 声明并初始化一个字符型变量
bool isStudent = true; // 声明并初始化一个布尔型变量
5. 常量
常量是在程序运行过程中不可改变的值。可以使用 const
关键字声明常量。
const int MAX_SIZE = 100; // 声明一个整型常量
const double PI = 3.14159; // 声明一个浮点型常量
6. 运算符
C++ 提供了多种运算符,用于执行数学运算、逻辑运算和位运算。
-
算术运算符:
+
:加法-
:减法*
:乘法/
:除法%
:取模(求余)
-
关系运算符:
==
:等于!=
:不等于<
:小于>
:大于<=
:小于等于>=
:大于等于
-
逻辑运算符:
&&
:逻辑与||
:逻辑或!
:逻辑非
-
位运算符:
&
:按位与|
:按位或^
:按位异或~
:按位取反<<
:左移>>
:右移
-
赋值运算符:
=
:简单赋值+=
:加法赋值-=
:减法赋值*=
:乘法赋值/=
:除法赋值%=
:取模赋值
7. 输入输出
C++ 使用 iostream
库进行输入输出操作。常用的操作符有 <<
和 >>
。
#include <iostream>
int main() {
int number;
std::cout << "请输入一个整数: ";
std::cin >> number;
std::cout << "你输入的整数是: " << number << std::endl;
return 0;
}
示例代码
以下是一个完整的示例代码,展示了上述基本语法的使用:
#include <iostream>
int main() {
// 注释
// 这是一个单行注释
/*
这是
一个多行
注释
*/
// 变量声明和初始化
int age = 25;
double height = 1.75;
char grade = 'A';
bool isStudent = true;
// 常量
const int MAX_SIZE = 100;
const double PI = 3.14159;
// 运算符
int sum = 10 + 5;
int difference = 10 - 5;
int product = 10 * 5;
int quotient = 10 / 5;
int remainder = 10 % 5;
// 关系运算符和逻辑运算符
bool isEqual = (age == 25);
bool isNotEqual = (age != 25);
bool isGreater = (age > 20);
bool isLess = (age < 30);
bool isGreaterOrEqual = (age >= 25);
bool isLessOrEqual = (age <= 25);
bool isTrue = (age > 20 && age < 30);
bool isFalse = (age > 30 || age < 20);
bool isNotTrue = !(age == 25);
// 位运算符
int bitwiseAnd = 5 & 3;
int bitwiseOr = 5 | 3;
int bitwiseXor = 5 ^ 3;
int bitwiseNot = ~5;
int leftShift = 5 << 1;
int rightShift = 5 >> 1;
// 输入输出
std::cout << "Age: " << age << std::endl;
std::cout << "Height: " << height << std::endl;
std::cout << "Grade: " << grade << std::endl;
std::cout << "Is Student: " << (isStudent ? "Yes" : "No") << std::endl;
std::cout << "Sum: " << sum << std::endl;
std::cout << "Difference: " << difference << std::endl;
std::cout << "Product: " << product << std::endl;
std::cout << "Quotient: " << quotient << std::endl;
std::cout << "Remainder: " << remainder << std::endl;
std::cout << "Is Equal: " << (isEqual ? "Yes" : "No") << std::endl;
std::cout << "Is Not Equal: " << (isNotEqual ? "Yes" : "No") << std::endl;
std::cout << "Is Greater: " << (isGreater ? "Yes" : "No") << std::endl;
std::cout << "Is Less: " << (isLess ? "Yes" : "No") << std::endl;
std::cout << "Is Greater or Equal: " << (isGreaterOrEqual ? "Yes" : "No") << std::endl;
std::cout << "Is Less or Equal: " << (isLessOrEqual ? "Yes" : "No") << std::endl;
std::cout << "Is True: " << (isTrue ? "Yes" : "No") << std::endl;
std::cout << "Is False: " << (isFalse ? "Yes" : "No") << std::endl;
std::cout << "Is Not True: " << (isNotTrue ? "Yes" : "No") << std::endl;
std::cout << "Bitwise AND: " << bitwiseAnd << std::endl;
std::cout << "Bitwise OR: " << bitwiseOr << std::endl;
std::cout << "Bitwise XOR: " << bitwiseXor << std::endl;
std::cout << "Bitwise NOT: " << bitwiseNot << std::endl;
std::cout << "Left Shift: " << leftShift << std::endl;
std::cout << "Right Shift: " << rightShift << std::endl;
return 0;
}