C语言数据类型

1、数据类型

1.1字符型

字符英文单词是character,在C语言中 char 表示字符类型。

char字符型------1字节 [signed] char//有符号的 unsigned char//无符号的

1.2整型

整数英文单词integer,在C语言中 int 表示整型。

//短整型------2字节 short [int] [signed] short [int] unsigned short [int] //整型------4字节 int [signed] int unsigned int //长整型------4字节 long [int] [signed] long [int] unsigned long [int] //更长的整型 C99中引入------8字节 long long [int] [signed] long long [int] unsigned long long [int]

1.3浮点型

float//单精度浮点型------4字节 double//双精度浮点型------8字节 long double------8字节

1.4布尔类型

C99中引入布尔类型--------1字节,专门表示真/假的变量。

C语言本来没有布尔类型,使用0表示假,非0表示真。

布尔类型使用必须包含头文件<stdbool.h>,取值是true或false。

#include <stdio.h> #include <stdbool.h> int main() { //_Bool flag1 = true; //_Bool flag2 = false; //#define bool _Bool bool flag1 = true; bool flag2 = false; if (flag1) printf("hehe\n");//打印 if (flag2) printf("haha\n");//不打印 return 0; }

2各种数据类型的长度

每种数据类型都有自己的长度,不同数据类型能创造出不同长度的变量,变量长度不同,存储数据的范围也不同

2.1sizeof 操作符

  • sizeof是一个关键字,也是一个操作符,专门用来计算类型长度,单位是字节。
  • sizeof(类型) sizeof 表达式——其操作数可以是类型,也可以是变量或者表达式。类型要有括号,表达式可以省略括号。
  • sizeof后面的表达式不是真实参与计算的,根据表达式类型得出类型长度
  • sizeof的计算结果是size_t类型,size_t类型的数据打印是使用%zu
  • int main() { int a = 10; printf("%zu\n", sizeof(a)); 4 printf("%zu\n", sizeof a); 4 printf("%zu\n", sizeof(int)); 4 printf("%zu\n", sizeof(3 + 3.5)); 8 return 0; }

    计算机能识别的是二进制,存储一个二进制位需要的空间是1个比特位(1bit)

1Byte(字节) == 8bit(比特),1KB(千字节)== 1024B,1MB(兆字节)== 1024KB

1GB(吉字节)== 1024MB, 1TB(太字节)== 1024GB

参考资料:https://en.cppreference.com/w/c/language/arithmetic_types.html#.E6.95.B0.E6.8D.AE.E6.A8.A1.E5.9E.8B

2.2signed和unsigned

C语言使用signed和unsigned关键字修饰 字符型和整型类型。

  • signed 关键字,表示一个类型带有正负号,包含负值
  • unsigned 关键字,表示该类型不带正负号,只能表示零和正数
  • 对应int类型,默认是带正负号的,关键字signed一般都省略不写
  • char 类型默认是否带正负号,由当前系统决定,char可能是signed char(大部分是这个),也可能是 unsigned char,这一点与int不同,int 默认为 signed int
  • 字符类型也属于整型,字符的本质是ASCll值
  • size_t是无符号的整型类型

3.变量

3.1变量的创建

类型是用来创建变量的,C语言中把经常变化的值称为变量,不变的值称为常量

变量创建的语法形式

data_type name | | | | 数据类型 变量名

变量命名规则

  • 只能由字母(大小写)、数字、下划线(‘_')组成
  • 不能以数字开头
  • 长度不能超过63个字符
  • 变量中区分大小写
  • 变量名不能使用关键字,变量名最好有意义
  • 变量在创建时给一个初始值,叫做初始化(与赋值区分)
  • 创建变量时最好给一个值,将它初始化,局部变量不初始化,编译器会给一个未知的值或者报错。
int main() { int age = 0;//初始化 float scores; scores = 20.0f;//f表示单精度浮点数,赋值 return 0; }

3.2变量的分类

  • 全局变量:在大括号外部定义的变量(全局变量使用范围更广,整个工程要使用都可以)
  • 局部变量:在大括号内部定义的变量(使用范围比较局限,只能在自己所在的局部范围内使用)
  • 全局变量如果不初始化,编译器会指定为0;局部变量不初始化,编译器会给未知值。
int d = 100;//全局变量 int main() { //局部变量 int a = 10; int b = 20; printf("%d", a); printf("%d", d); return 0; }
  • 当全局变量和局部变量名字相同时,局部变量优先

变量创建的本质是向内存申请空间,全局变量和局部变量在内存存储在哪里呢?

内存分为三个区域:栈区、堆区、静态区

1、局部变量、函数参数 放在栈区

2、全局变量、静态变量 放在静态区

3、堆区是用来动态内存管理的(mallloc、calloc、realloc、free)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1155817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何用5S现场管理系统,让每一次检查都落地

在中小企业里&#xff0c;推行5S管理并不只是打扫卫生那么简单。很多企业每天都有巡检记录、打卡、拍照&#xff0c;但当你走进车间、办公区或者仓库&#xff0c;你会发现现场依旧乱象丛生。不是员工不努力&#xff0c;也不是管理者不重视&#xff0c;而是5S管理本身如果缺少系…

从手写代码备份到分布式协作:Git 安装使用全攻略(附常见场景与最佳实践)

Git 安装指南Windows 系统 访问 Git 官方下载页面&#xff08;https://git-scm.com/downloads&#xff09;&#xff0c;选择 Windows 版本安装包。运行安装程序时&#xff0c;默认选项即可满足大多数需求&#xff0c;注意勾选“Git Bash”以获取终端工具。macOS 系统 通过 Home…

布朗大学揭示医疗角色扮演的双刃剑效应

这项由布朗大学领导、联合图宾根大学共同完成的研究发表于2026年1月的arXiv预印本平台&#xff08;论文编号&#xff1a;arXiv:2601.05376v1&#xff09;&#xff0c;为我们揭开了一个令人意外的发现&#xff1a;当我们给AI医生戴上不同的"人格面具"时&#xff0c;它…

深度学习毕设选题推荐:基于python卷积网络训练识别核桃好坏基于python深度学习卷积网络训练识别核桃好坏

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

德国研究突破:免训练人脸质量评估技术诞生

来自德国弗劳恩霍夫研究院和达姆施塔特工业大学的研究团队近期取得了一项重要突破&#xff0c;他们提出了名为ViTNT-FIQA的全新人脸图像质量评估方法。这项发表于2025年的研究成果发表在计算机视觉领域的顶级会议上&#xff0c;论文编号为arXiv:2601.05741v1&#xff0c;为人脸…

【算法题】归并排序

归并排序是基于分治思想的经典排序算法&#xff0c;核心逻辑是“拆分→排序→合并”&#xff1a;将数组递归拆分为子数组&#xff0c;分别排序后再合并为有序数组。它是稳定排序&#xff08;相同元素相对位置不变&#xff09;&#xff0c;时间复杂度稳定为 O(nlog⁡n)O(n\log n…

Python数学可视化——显函数、隐函数及复杂曲线的交互式绘图技术

Python数学可视化技术概述Python提供了多种库用于数学可视化&#xff0c;包括显函数、隐函数及复杂曲线的交互式绘图。常用工具包括Matplotlib、SymPy、Plotly和Mayavi&#xff0c;适用于2D/3D图形、符号计算及动态交互。显函数绘图显函数&#xff08;如$y f(x)$&#xff09;可…

谢菲尔德大学:AI模型如何在陌生环境中保持“人性化“表现

当我们人类从一个熟悉的环境转移到完全陌生的地方时&#xff0c;往往需要重新适应当地的规则和习惯。比如一个在北京生活多年的人突然搬到成都&#xff0c;虽然同样是说中文&#xff0c;但在表达方式、社交礼仪&#xff0c;甚至是点菜习惯上都需要重新学习和调整。有趣的是&…

Java锁机制八股文

一、简短结论 CAS是基础&#xff1a;所有Java锁机制的底层都依赖CAS实现原子操作AQS是框架&#xff1a;ReentrantLock等JUC锁基于AQS&#xff0c;AQS使用CASCLH队列synchronized是混合锁&#xff1a;经历了偏向锁→轻量级锁→重量级锁的升级过程&#xff0c;内部大量使用CAS锁选…

【2026视频播放器】电脑手视频播放器 PotPlayer‌,KMPlayer,VLC media player,MPV,MPC-HC,GOM Player‌,ACG

视频播放器是我们日常观影、学习、工作的重要工具。本文将为大家推荐10款专业实用的PC端视频播放器&#xff0c;全部纯净无广 &#xff0c;支持超高清解码&#xff0c;满足不同用户的需求。 【地址】&#xff1a;https://tool.nineya.com/s/1iuc1h093 【资源也准备好了】&…

国内首例 AI 伴侣聊天提供者涉黄获刑,二审将开庭;OpenAI :大模型能力过剩,未来重心将转向系统层与应用层丨日报

开发者朋友们大家好&#xff1a; 这里是 「RTE 开发者日报」 &#xff0c;每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE&#xff08;Real-Time Engagement&#xff09; 领域内「有话题的技术」、「有亮点的产品」、「有思考的文章」、「有态度的观点」、「…

微信视频号下载器,蝴蝶号视频下载

自媒体必备神器-微信视频号下载器 - 教你如何下载视频号视频 体积小、使用简单、支持 macOS 和 Windows 系统。 一、下载器简介 对于自媒体人来说&#xff0c;获取和保存微信视频号上的优质视频内容&#xff0c;是日常创作和学习的重要一环。为了帮助大家轻松下载微信视频号…

强烈安利9个AI论文平台,本科生毕业论文轻松搞定!

强烈安利9个AI论文平台&#xff0c;本科生毕业论文轻松搞定&#xff01; AI 工具让论文写作变得轻松高效 在当今这个信息爆炸的时代&#xff0c;本科生的毕业论文写作早已不再是单纯的学术挑战&#xff0c;而是一场与时间、效率和质量的较量。尤其是面对复杂的选题、繁重的文献…

全网最全研究生必用AI论文工具TOP8测评

全网最全研究生必用AI论文工具TOP8测评 2026年研究生必备AI论文工具测评&#xff1a;为何要关注这些工具&#xff1f; 随着人工智能技术的不断进步&#xff0c;越来越多的学术工作者开始依赖AI工具来提升论文写作效率与质量。对于研究生群体而言&#xff0c;从选题、文献综述到…

业务即代码:当DDD穿越古代商帮-第2集:第一次事件风暴

笔言: 在《1999点科技树》第九、十合集&#xff08;看见与守护&#xff1a;分布式系统的观测体系与安全架构&#xff09;中&#xff0c;我曾提及一个写作计划——将 DDD&#xff08;领域驱动设计&#xff09; 与 BIZBOK&#xff08;业务知识体系&#xff09; 深度融合&#xff…

别再纠结了:Lambda 还是 Kappa?流批统一这件事,真没你想得那么玄乎

“别再纠结了&#xff1a;Lambda 还是 Kappa&#xff1f;流批统一这件事&#xff0c;真没你想得那么玄乎”很多人一聊到流-批统一架构&#xff0c;第一反应就是一句话&#xff1a;“Lambda 太复杂&#xff0c;Kappa 才是未来。”听起来很有道理&#xff0c;对吧&#xff1f; 但…

10341_基于Springboot的珠宝销售网站

1、项目包含项目源码、项目文档、数据库脚本、软件工具等资料&#xff1b;带你从零开始部署运行本套系统。2、项目介绍随着科学技术和信息通讯的飞速发展&#xff0c;Internet极大的丰富和改变着我们生活的各个行业。随着Internet的普及应用&#xff0c;人们可以跨越时间和空间…

Linux在毕业设计中的核心难点与重点梳理(附避坑指南)

在计算机相关专业毕业设计中&#xff0c;Linux 常作为底层环境、服务器载体或核心操作平台&#xff0c;无论是嵌入式、后端开发、运维方向&#xff0c;都绕不开相关应用。但多数同学实操经验不足&#xff0c;容易在核心环节卡壳&#xff0c;本文梳理关键难点与重点&#xff0c;…

亲测好用8个一键生成论文工具,MBA论文写作必备!

亲测好用8个一键生成论文工具&#xff0c;MBA论文写作必备&#xff01; AI 工具如何成为论文写作的得力助手 在当今快节奏的学术环境中&#xff0c;MBA 学生和研究者常常面临时间紧、任务重的压力。尤其是在撰写论文时&#xff0c;从选题到成稿&#xff0c;每一个环节都需要大量…

智能电梯门禁(可视对讲联动梯控)方案实现梯控联动召梯、呼梯、访客联动功能,完全融入楼宇可视对讲门禁系统,核心通过协议对接 + 物理接线双重方式,保障乘梯权限管理与联动控制的稳定性。

这份清单非常专业&#xff0c;清晰地勾勒出了一套深度融入楼宇对讲系统的智能梯控解决方案。这不仅仅是设备的堆砌&#xff0c;更是一套通过协议对接和硬件联动&#xff0c;实现从“业主无感通行”到“访客精准授权”全场景覆盖的完整蓝图楼宇可视对讲门禁与梯控系统联动方案一…