当前位置: 首页 > news >正文

博客网站搭建石家庄学做网站建设培训学校

博客网站搭建,石家庄学做网站建设培训学校,正方教务系统管理系统入口,制作汽车网站一、数据类型 以下是C数据类型与运算符的详解,结合表格和说明呈现: 1. 基本数据类型 类型大小 (字节)取值范围示例bool1true / falsebool flag true;char1-128127 或 0255char c A;signed char1-128~127signed char sc -10;unsigned char10~255un…

一、数据类型 

以下是C++数据类型与运算符的详解,结合表格和说明呈现:

1. 基本数据类型
类型大小 (字节)取值范围示例
bool1true / falsebool flag = true;
char1-128127 或 0255char c = 'A';
signed char1-128~127signed char sc = -10;
unsigned char10~255unsigned char uc = 200;
short2-32,768~32,767short s = 100;
int4 (通常)-2³¹ ~ 2³¹-1int i = -5000;
long4 或 8-2³¹ ~ 2³¹-1 或 -2⁶³~2⁶³-1long l = 100000;
long long8-2⁶³ ~ 2⁶³-1long long ll = 1e18;
float4±3.4e-38 ~ ±3.4e38float f = 3.14f;
double8±1.7e-308 ~ ±1.7e308double d = 2.71828;
void-无值void func();

注意

  • 具体大小取决于编译器和操作系统(如 int 在16位系统中为2字节)。
  • C++11新增:char16_t (2字节), char32_t (4字节) 用于Unicode。

2. 派生数据类型
类型描述示例
指针存储内存地址int* p = &i;
数组同类型元素的集合int arr[5] = {1,2,3};
引用变量的别名(必须初始化)int& ref = i;
结构体用户自定义的复合数据类型struct Point { int x,y; };
面向对象的核心class Student { ... };
枚举命名整数常量集合enum Color {RED, GREEN};
联合体共享内存的不同类型成员union Data { int i; float f; };

二、C++ 运算符

1. 算术运算符
运算符功能示例结果
+加法3 + 25
-减法5 - 32
*乘法4 * 520
/除法10 / 33 (整数除)
%取模10 % 31
++自增int a=5; a++;a=6
--自减int b=4; --b;b=3

注意

  • 整数除法会截断小数部分(10/3=3)。
  • 自增/自减分前置(先计算后赋值)和后置(先赋值后计算)。

2. 关系运算符
运算符含义示例结果
==等于5 == 3false
!=不等于5 != 3true
>大于5 > 3true
<小于5 < 3false
>=大于等于5 >= 5true
<=小于等于4 <= 3false

3. 逻辑运算符
运算符功能示例结果
&&逻辑与(5>3) && (2<1)false
`\\`逻辑或
!逻辑非!(5>3)false

4. 位运算符
运算符功能示例结果(二进制)
&按位与5 & 3 (101 & 011)001 (1)
`\`按位或`5 \
^按位异或5 ^ 3110 (6)
~取反~5补码形式(如 -6
<<左移5 << 11010 (10)
>>右移5 >> 110 (2)

5. 赋值运算符
运算符等价形式示例效果
=-a = 5;赋值
+=a = a + ba += 3;加后赋值
-=a = a - ba -= 2;减后赋值
*=a = a * ba *= 4;乘后赋值
/=a = a / ba /= 2;除后赋值
%=a = a % ba %= 3;取模后赋值

6. 特殊运算符
运算符功能示例
? :三元条件运算符int max = (a>b) ? a : b;
sizeof()返回类型/对象大小sizeof(int)4
,逗号运算符(顺序求值)a = (b=3, b+2);a=5
::作用域解析std::cout
typeid()获取类型信息typeid(int).name()"i"
dynamic_cast安全向下转型dynamic_cast<Derived*>(base_ptr)

三、关键概念详解

1. 数据类型转换
转换类型描述示例
隐式转换编译器自动进行int i = 3.14;i=3 (截断)
显式转换强制类型转换double d = (double)5/2;d=2.5
C++风格转换更安全的转换方式static_cast<double>(5)/2
2. 运算符优先级(部分)
优先级运算符结合性
1:: (作用域)左到右
2++, --, sizeof, !, ~右到左
3*, /, %左到右
4+, -左到右
5<<, >>左到右
6<, <=, >, >=左到右
7==, !=左到右
12&&左到右
13`\\
15? :右到左
16=, +=, -= 等赋值运算符右到左

口诀
括号成员第一;全体单目第二;乘除余三,加减四;移位五,关系六;等与不等排第七;位与异或和位或;逻辑与或三二一。


四、示例代码

#include <iostream>
using namespace std;int main() {// 数据类型示例double pi = 3.14159;int truncated = static_cast<int>(pi); // 显式转换: 3// 运算符综合int a = 10, b = 3;int mod = a % b;      // 取模: 1bool cmp = (a >= 10); // 比较: trueint bitwise = a << 2; // 左移2位: 40// 三元运算符   也叫  三目运算符string result = (b > 0) ? "Positive" : "Negative";cout << "Mod: " << mod << "\nBitwise: " << bitwise << endl;return 0;
}

五、避坑指南

  1. 整数溢出
    unsigned char c = 300; → 溢出(300 > 255),行为未定义!
  2. 浮点精度陷阱
    0.1 + 0.2 != 0.3(二进制浮点无法精确表示0.1)。
  3. 指针野引用
    int* p; *p = 10; → 未初始化的指针导致崩溃。
  4. 运算符优先级混淆
    int x = 5 + 3 * 2;x=11(乘法优先级高于加法)。

掌握这些核心知识,相当于打通C++内功的“任督二脉”,后续修炼面向对象和模板等高级境界将事半功倍!

http://www.yayakq.cn/news/830279/

相关文章:

  • 西安学校部门定制网站建设公司蓝色门户网站
  • 聊城宏远网站建设优化wordpress音乐直链插件
  • 浙江省工程建设协会网站怎样自学设计室内装修效果图
  • 百度商桥网站加不上本科专业建设规划
  • 网站开发有前途手机可以建网站嘛建站好吗
  • 多个域名绑定同一网站吗益阳建站网站制作
  • 武进做网站的公司做公司网站需要注意哪些
  • 建设机械网站案例分析湖南广告优化
  • 家电维修网站建设表情包生成器在线制作gif
  • 网站优化是往新闻中心发新闻吗做那种网站赚钱
  • 突出网站建设 突出能力网站建设免费国外
  • 北京建站报价做h5的免费软件
  • 网站ui设计基础口碑做团购网站
  • 网站底部有很多图标凡客的网站功能
  • 网站建设分金手指专业二七校区网站建设
  • 网站开发个人技能织梦移动网站
  • 个体工商户经营范围做网站上海太江建设网站
  • 杭州有实力的网站开发frontpage网站建设论文
  • 搜网站关键词装修风格大全2021新款简约
  • .php的网站是怎么做的安徽合肥网站制作
  • 有网站源代码能自己做网站吗网站建站建设网站
  • 网站构架图规范网站维护 建设 管理
  • 东莞多语言网站建设旅游网站前端模板
  • 爱站seo工具wordpress require
  • 黄冈市网站建设建网站需要多少钱和什么条件才能建
  • 写出网站版面布局设计步骤dw8做网站步骤图
  • 南昌营销型网站建设申请免费空间
  • 企业对做营销型网站有什么优势如何让自己的网站排在前面
  • 免费网站推广网站在线做暖暖视频网站有哪些
  • 织梦cms 做视频网站怎么样才能引流客人进店