ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

C/C++常识

C/C++常识 一、bool是 C布尔类型用来表示逻辑值只有两种取值true真等价数值1false假等价数值0二、逻辑运算符运算符名称格式规则!逻辑非取反!aa 为 true → falsea 为 false → true逻辑与a b两边全 true结果才 true否则 false逻辑或ab任意一边 true结果就 true全 false 才 false关键特性短路求值必考a b如果a是 false不会执行 ba || b如果a是 true不会执行 b三、关系比较运算符 → 返回 bool !表达式运算结果一定是 bool四、算术运算符 - * / %算术运算得到数字数字本身不是 bool只有在需要 bool 的地方才隐式转换 转换规则复习0→false所有非 0正数、负数→true五、assert是断言宏不是函数定义在头文件#include cassert作用检测一个条件是否成立。如果括号内表达式 true什么都不做程序继续运行如果括号内表达式 false程序直接终止打印报错信息文件名、行号、失败条件六、while 循环语法while(条件表达式) { 循环体; }先判断条件表达式隐式转 bool条件为 true → 执行循环体执行完回到开头再次判断条件条件 false → 直接跳出循环特点先判断后执行。条件不成立循环体一次都不运行。int i 1; while(i 10) { cout i ; i; // 一定要更新变量否则死循环 }do while 循环do { 循环体; }while(条件); // 末尾分号不能丢执行流程先执行一次循环体再判断条件true继续循环false退出特点先执行后判断。循环体至少执行 1 次int i 1; do { cout i ; i; }while(i 10);for 循环最常用for(表达式1; 表达式2; 表达式3) { 循环体; }表达式 1初始化只执行 1 次表达式 2循环条件判断bool表达式 3每次循环结束后执行更新变量执行顺序初始化 → 判断条件 → 循环体 → 更新 → 判断条件 → 循环体……// i从1到10 for(int i 1; i 10; i) { cout i ; }灵活写法三个表达式都可以省略for(;;) // 等价 while(true) 死循环 { }循环控制关键字 break /continue1. break直接跳出当前整个循环循环彻底结束for(int i 1; i 10; i) { if(i 5) break; cout i; // 输出1 2 3 4 }2. continue终止本次循环立刻进入下一轮条件判断for(int i 1; i 10; i) { if(i 5) continue; cout i; // 输出1234678910跳过5 }⚠️ 注意continue在while中使用时要小心变量更新位置防止死循环// 危险写法i 在continue后面永远执行不到 while(i 10) { if(i 5) continue; i; }七、前置自增a先自增再使用变量值后置自增a先使用变量原值再自增前置自减--a先自减再使用变量值后置自减a--先使用变量原值再自减八if{ if{} }层层递进先满足外层才走内层条件是包含关系。else{ if{} }一个不行再试下一个条件是平行互斥关系语法简写就是 else if。九、C中单个字符与字符串用cout输出时用单双引号汉字是多字节字符GBK 占 2 字节UTF-8 占 3 字节远远超出单个char1 字节空间标准不支持汉字、一串文字统一双引号。提取运算符有一个固定规则 读取数字时自动忽略前面所有空白。空白包含 空格 、换行\n、制表符Tab十、_str[end‑len]--是后置递减先取_str[end‑len]的字符值赋值给_str[end]然后把数组元素_str[end‑len]的值减 1字符 ASCII 码 - 1❗不是下标end‑len自减是数组里面存的字符内容本身做‑1。十一、
返回列表