C++基础语法入门:数据类型、控制结构与函数
                           
天天向上
发布: 2025-02-04 00:49:08

原创
367 人浏览过

C++简介

  • C++的历史与特点
    C++由Bjarne Stroustrup在1983年开发,最初作为C语言的扩展,加入了面向对象编程(OOP)特性。它的特点包括高性能、支持面向对象、泛型编程以及底层操作能力,因此被广泛应用于系统软件、游戏开发和高性能应用。
  • C++与C的区别
    C++在C的基础上添加了面向对象的特性(如类、继承、多态),并支持函数重载、运算符重载、模板等高级功能。C语言偏重于过程化编程,C++则鼓励通过类和对象封装数据和行为。
  • C++的编译过程
    C++程序需要经过预处理、编译、链接等多个阶段。编译器首先将源代码转换为机器语言,链接器将多个目标文件合并成一个可执行文件。

基本语法

  • 数据类型
    C++支持多种基本数据类型,包括:
  • 整型(int):用于表示整数。
  • 浮动类型(float、double):用于表示带小数点的数字。
  • 字符类型(char):用于表示单个字符。
  • 布尔类型(bool):表示真(true)或假(false)。
  • 变量声明与初始化
    在C++中,变量必须先声明后使用,可以在声明时进行初始化:
  int age = 25;
  float height = 5.9;
  char grade = 'A';
  • 常量(const)
    const用于声明常量,常量值在程序执行过程中不可更改:
  const int MAX_SCORE = 100;
  • 输入输出:cin 和 cout
    C++提供了cin用于输入,cout用于输出:
  int num;
  std::cin >> num;  // 从键盘输入
  std::cout << "The number is: " << num << std::endl;  // 输出到屏幕
  • 基本运算符
  • 算术运算符+, -, *, /, %
  • 比较运算符==, !=, <, >, <=, >=
  • 逻辑运算符&&, ||, !
  • 控制结构
    C++提供了多种控制结构来控制程序流程:
  • if、else:用于条件判断。
  • switch:用于多条件选择。
  • for、while、do-while:用于循环结构。 示例:
  if (num > 10) {
      std::cout << "Greater than 10" << std::endl;
  } else {
      std::cout << "Less than or equal to 10" << std::endl;
  }

函数

  • 函数的声明与定义
    C++函数有返回类型、函数名和参数列表:
  int add(int a, int b) {
      return a + b;
  }
  • 函数参数传递
  • 按值传递:将实际参数的值传递给函数,函数内的修改不会影响外部变量。
  • 按引用传递:通过引用传递实际参数,函数内的修改会影响外部变量。
  void increment(int &num) {
      num++;
  }
  • 函数重载
    C++支持函数重载,即允许多个同名函数通过不同参数类型或数量区分:
  int add(int a, int b) { return a + b; }
  double add(double a, double b) { return a + b; }
  • 返回值与函数递归
    函数可以返回一个值,支持递归调用:
  int factorial(int n) {
      if (n <= 1) return 1;
      return n * factorial(n - 1);
  }

数组与字符串

  • 一维和二维数组
    数组是存储相同类型数据的集合,可以是多维数组:
  int arr[5] = {1, 2, 3, 4, 5};  // 一维数组
  int matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};  // 二维数组
  • 字符串处理
  • C风格字符串:以\0结尾的字符数组。
    cpp char str[] = "Hello, World!";
  • C++风格字符串:使用std::string类。
    cpp std::string str = "Hello, World!";

总结

通过掌握C++的基础语法,初学者可以迅速构建简单的程序,理解数据类型、控制结构、函数等核心概念,为后续的面向对象编程与高级特性打下坚实的基础。

发表回复 0

Your email address will not be published. Required fields are marked *