当前位置:首页C++程序设计 > 正文

C++98 语法大全

作者:野牛程序员:2026-01-27 13:39:07C++程序设计阅读 2007
C++98 语法大全

C++98 语法大全

一、基本语法

类别语法/示例说明注意事项
数据类型int a = 10; double b = 3.14; char c = 'A'; bool flag = true;基本类型布尔类型值为 true/false
字符串char str[] = "Hello";C 风格字符串C++98 不支持 std::string 初始化列表
常量const int MAX = 100;定义不可修改的常量必须初始化
#define PI 3.14编译时宏没有类型检查

二、运算符与表达式

类别示例说明
算术+ - * / %支持整型和浮点型
赋值= += -= *= /= %= ++ --基本赋值与自增自减
比较== != < > <= >=返回布尔值
逻辑`&&
位运算`&^ ~ << >>`
条件?:三元操作符

三、控制结构

类型示例说明
条件语句if(cond){ } else{ }标准条件判断
switchswitch(x){ case 1: ...; break; default: ...; }多分支选择
循环for(int i=0;i<10;i++){}标准 for 循环
whilewhile(cond){}条件循环
do-whiledo{ } while(cond);先执行后判断
break/continuebreak; continue;控制循环流程

四、函数

类别示例说明
函数定义int add(int a,int b){ return a+b; }标准函数
函数声明int add(int,int);提前声明
默认参数int add(int a, int b=10);从右往左设置
函数重载int add(int a,int b); double add(double a,double b);参数类型或个数不同

五、数组与指针

类别示例说明
一维数组int arr[5] = {1,2,3,4,5};定长数组
二维数组int mat[3][3] = {{1,2,3},{4,5,6},{7,8,9}};矩阵形式
指针int* p = &a;存储地址
指针操作*p = 10; p++;间接访问,偏移

六、面向对象特性

特性示例说明
类定义class Person { public: int age; void show(); };封装属性和方法
构造函数Person(){ age=0; }初始化对象
析构函数~Person(){}对象销毁时调用
访问控制public / private / protected控制访问权限
成员函数定义void Person::show(){ std::cout<<age; }类外定义
静态成员static int count;类共享数据
继承class Student: public Person {}单继承、访问控制
多态虚函数virtual void print(); 支持运行时多态
纯虚函数virtual void f() = 0;抽象类

七、模板机制

特性示例说明
函数模板template<typename T> T add(T a,T b){ return a+b; }支持不同类型参数
类模板template<typename T> class MyClass{ T data; };支持泛型类

八、标准库(STL)

容器示例说明
vectorstd::vector<int> v; v.push_back(1);动态数组
dequestd::deque<int> d; d.push_front(1);双端队列
liststd::list<int> l; l.push_back(1);双向链表
stackstd::stack<int> s; s.push(1); s.pop();
queuestd::queue<int> q; q.push(1); q.pop();队列
mapstd::map<int,std::string> m; m[1]="a";键值映射
setstd::set<int> s; s.insert(1);元素唯一集合

STL算法

算法示例说明
排序std::sort(v.begin(),v.end());升序排序
查找std::find(v.begin(),v.end(),3);返回迭代器
复制std::copy(v.begin(),v.end(),dest.begin());拷贝容器内容
删除std::remove(v.begin(),v.end(),value);与 erase 配合使用

九、输入输出

类别示例说明
基本输出std::cout << "Hello";控制台输出
基本输入std::cin >> a;控制台输入
格式化输出std::setw(5) << a需要 #include <iomanip>
文件操作std::ifstream fin("file.txt"); std::ofstream fout("out.txt");文件读写

十、命名空间与异常

特性示例说明
命名空间namespace My { int a; }避免命名冲突
usingusing namespace std;简化使用
异常try { ... } catch(std::exception &e){ }捕获异常
自定义异常class MyEx: public std::exception { const char* what() const throw(); };可扩展异常类型

十一、其他特性

特性示例说明
类型转换static_cast<int>(x), dynamic_cast<Derived*>(base)强制转换
枚举enum Color{Red,Green,Blue};基本枚举类型
typedeftypedef unsigned int uint;类型别名
sizeofsizeof(int)返回类型/变量大小
assert#include <cassert> assert(x>0);调试断言

十二、总结

C++98 核心特点:

  1. 面向对象:类、继承、多态、封装

  2. 模板:函数模板、类模板

  3. 标准库:STL 容器、算法、迭代器

  4. 输入输出:iostream、fstream

  5. 控制语句:标准循环、条件语句

  6. 基础语法:指针、数组、函数、运算符、命名空间


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • C++98 语法大全
  • 相关推荐

    最新推荐

    热门点击