数据类型总结

1 引言

在计算机的世界里,数据类型是被人类定义出来的,方便人去更好地理解、辨别数据。计算机只能识别二进制数,不可能要求写代码时,只是输入一些0/1的东西。通过定义数据类型,可以让人和计算机更好地“沟通”,计算机对不同数据类型编译的方式是不一样的。

同时,不同的数据类型在计算机中占有的存储空间大小又是不一样的,即有的占用空间大,有的占用空间小,这样一来,计算机存储就更加灵活,空间利用率也会更高。数据在计算机中存储的空间用字节(Byte)来计量,一个字节存储8位无符号数,储存的数值范围为0-255。

常用的数据类型有:整型、浮点型、字符型、布尔型。要完全弄清楚一个数据类型,笔者觉得应该从这几个维度进行总结归纳:① 作用;② 分类;② 表示方法;③ 内存和范围;⑤ 特殊知识点。

2 不同数据类型介绍

2.1 整型

① 作用:用来表示整数;

② 分类:短整型(short)、整型(int)、长整型(long)、长长整型(long long)。

③ 表示方法:数据类型 变量名 = 变量初始值

例如:

short a = 1;  //短整型变量a

int b = 2; //整型变量b

long c = 3; //长整型变量c

long long d = 4; //长长整型变量d

④ 内存和范围

⑤ 特殊知识点

  • 在其它地方经常看到int8/int16/int32样式的表示方法:int8等同于Byte,占一个字节;int16等同于short占两个字节;int32等同于int,占四个字节;int64等同于long long,占8个字节。
  • 超过所能表示的最大值时,会用该数据类型的下限表示(也就是出错了)。

2.2 浮点型

① 作用:用来表示小数

② 分类:单精度(float)、双精度(double)

③ 表示方法:数据类型 变量名 = 变量初始值

举例:

float a = 1.1f; //定义一个单精度变量

double = 1.2; //定义一个双精度变量

④ 内存和范围

⑤ 特殊知识点

  • float在定义时,后面最好加一个f,float a = 3.14f;如果定义是float a = 3.14;会默认a是双精度,在程序运行时,需要转一下。
  • 在C++中,无论是float还是double,小数输出时,默认显示6位有效数字。
  • 科学计数法的表示方法:1) float a = 3e^2;//表示3*10^2   2)float b=3e^-2;//表示0.03

2.3 字符型

① 作用:用来表示文本信息

② 分类:字符、转义字符、字符串

③ 表示方法

字符:char 变量名 = ‘字符’; //用单引号

转义字符:一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符。常用的转义字符有1)\n 换行;2)\\反斜杠;3)\t加8个空格。

字符串:两种风格

1)C风格:char 变量名[] = "字符串"; //双引号

2)C++风格:string 变量名 = "字符串"; //需要包含头文件#include<string>

④ 内存和范围

一个字符占一个字节

⑤ 特殊知识点

  • 字符是将对应的ASIC码放入到存储单元中,计算机内存的是对应的二进制数;
  • 使用string时,需要包含头文件#include<string>。

2.4 布尔类型

① 作用:表示真或假

② 分类:bool

③ 表示方法:bool 变量名 = ‘true’ or 'false'

④ 内存和范围:只占一个字节,0或者1

3 常用相关的函数

3.1 sizeof函数

作用:可以用来统计数据所占内存;

语法:sizeof(变量)或者sizeof(变量类型)

int a;
int a_length_1 = sizeof(a);
int a_length_2 = sizeof(int);
int b[5]={1,2,3,4,5};
int b_length=sizeof(b)/sizeof(int);//求数组长度

3.2 数据输入

关键字:cin

语法:cin<<变量;

3.3 数据输出

关键字:cout

语法:cout<<变量<<endl;        //endl表示换行

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

制氢机远程监控运维方案

制氢机远程监控运维方案 在当今能源转型的大背景下&#xff0c;氢能作为清洁、高效且可再生的能源载体&#xff0c;其重要性日益凸显。而制氢机作为氢能产业链中的关键设备&#xff0c;其稳定运行与高效运维对于保障氢气供应、推动氢能产业健康发展至关重要。在此背景下&#…

spring boot 基础案例【2】对多环境配置的支持更改

教程1 案例教程 案例仓库 在线编程 教程2 基础教程 教程仓库 在线编程 本案例所在的仓库 本案例所在的文档 进入正文 1.文件目录 1. Chapter12Application.java 地址&#xff1a;/chapter1-2/src/main/java/com/didispace/chapter12/Chapter12Application.java package com.…

康谋分享 | aiSim5激光雷达LiDAR模型验证方法(二)

aiSim中的LiDAR是一种基于光线追踪的传感器&#xff0c;能够模拟真实LiDAR发射的激光束&#xff0c;将会生成LAS v1.4标准格式的3D点云&#xff0c;包含了方位角、俯仰角和距离等。 aiSim能够模拟LiDAR单态&#xff08;Monostatic&#xff09;和同轴&#xff08;Coaxial&#…

PC端微信软件如何多开【详细教程】

现在工作中&#xff0c;很多小伙伴会用到两个微信。如何在PC端同时登录多个微信呢&#xff1f;赶快跟着下面的教程学起来吧 1、创建一个txt文本文件 2、输入以下代码并保存 echo offstart "" "复制粘贴微信的目标地址" 需要开几个微信就复制几行exit示例…

UTONMOS:用区块链技术拓展商业边界在哪里?

引言 大约从 2021 年Web 3 这个新概念开始受到风险基金和科技圈的普遍关注。但如果你对过去几年区块链的发展历史足够了解&#xff0c;就应该已经意识到现在的 Web 3 并不是什么新技术&#xff0c;甚至不是旧技术的进步&#xff0c;它只是一个基于区块链技术的宏大构想。 我是…

Vue3+Vant开发:个人信息管理

🙈作者简介:练习时长两年半的Java up主 🙉个人主页:程序员老茶 🙊 ps:点赞👍是免费的,却可以让写博客的作者开心好久好久😎 📚系列专栏:Java全栈,计算机系列(火速更新中) 💭 格言:种一棵树最好的时间是十年前,其次是现在 🏡动动小手,点个关注不迷路,…

一个联合均值与方差模型的R包——dglm

目录 一、引言二、包的安装与载入三、模拟例子3.1 数据生成3.2 数据查看3.3 模型估计参数 一、引言 在 R 语言中&#xff0c;dglm 包是用于拟合双参数广义线性模型&#xff08;Double Generalized Linear Models&#xff0c;简称 DGLMs&#xff09;的一个工具。这类模型允许同…

C语言实现双人贪吃蛇项目(基于控制台界面)

一.贪吃蛇 贪吃蛇是一款简单而富有乐趣的游戏&#xff0c;它的规则易于理解&#xff0c;但挑战性也很高。它已经成为经典的游戏之一&#xff0c;并且在不同的平台上一直受到人们的喜爱和回忆。 二.贪吃蛇的功能 游戏控制&#xff1a;玩家可以使用键盘输入设备来控制蛇的移动方…

139GB,台北倾斜摄影OSGB数据V0.1版

本月初发布了谷歌倾斜摄影数据OSGB转换工具V0.2版(更新&#xff01;谷歌倾斜摄影转换生成OSGB瓦片V0.2版),并免费分享了基于V0.2版转换工具生产的澳门地区OSGB数据(首发&#xff01;澳门地区OSGB数据V0.2版免费分享),V0.2版本在生产速度、显示效率和OSGB数据轻量化方面进行了优…

NVIDIA Jetson jtop查看资源信息

sudo -H pip install -U jetson-stats 安装好之后可能需要reboot 执行jtop&#xff1a; 时间久了可能会退出&#xff0c;可参考如下再次启动。 nvidiategra-ubuntu:~$ jtop The jtop.service is not active. Please run: sudo systemctl restart jtop.service nvidiategra-ub…

修改docker镜像版本,容器大小缩小10%!

shigen坚持更新文章的博客写手&#xff0c;擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长&#xff0c;分享认知&#xff0c;留住感动。 个人IP&#xff1a;shigen 是的&#xff0c;你看的没错&#xff1a;修改docker镜像的版本&#xff0c;我的…

最新知识付费小程序源码独立版 支持多终端合一+源码开源可二开+含完整代码包和安装教程

在当今信息爆炸的时代&#xff0c;知识付费逐渐成为了一种新型的商业模式。为了满足广大开发者和运营者的需求&#xff0c;分享一个最新版的知识付费小程序源码独立版。该版本不仅支持多终端合一&#xff0c;还具备源码开源可二开的特性&#xff0c;同时提供了完整的代码包和安…

【性能测试】ChaosTesting(混沌测试)ChaosBlade(混沌实验工具)(六)-servelt

7. servelt接口规范 7.0 创建servelt blade create servlet 7.0.1 介绍 Servlet 是 Java 的 web 的接口规范&#xff0c;Java web 服务器都遵循此规范实现。本场景主要模拟 Java Web 请求延迟、异常场景。 [blade create servlet delay](blade create servlet delay.md) 请…

网页自动跳转到其他页面,点击浏览器返回箭头,回不到原来页面的问题

背景&#xff1a;今天产品提个需求&#xff0c;需要从index页面自动触发跳转到下一页面的事件&#xff0c;从而不做任何操作&#xff0c;直接跳转到test页面。 代码是这样的&#xff1a; index.vue: <template><div style"width:500px;height:600px;background-…

WIFISKY 7层流控路由器 confirm.php RCE漏洞复现

0x01 产品简介 WIFISKY-7层流控路由器是一款可用于家庭或办公环境的无线路由器,具备流控功能以优化网络流量和提供更稳定的网络连接。该路由器采用了7层流控技术,能够依据网络数据包的内容进行智能管理,从而实现对网络流量的精细化控制和优化。这种技术可以提升网络的整体性…

Science Robotics 美国斯坦福大学研制了外行星洞穴探测机器人

月球和火星上的悬崖、洞穴和熔岩管已被确定为具有地质和天体生物学研究理想地点。由于其隔绝特性&#xff0c;这些洞穴提供了相对稳定的条件&#xff0c;可以促进矿物质沉淀和微生物生长。在火星上&#xff0c;这些古老的地下环境与火星表面可能适合居住时几乎没有变化&#xf…

孙中亮:北斗三十周年,看北斗芯片高质量发展历程和方向

1994年1月10日&#xff0c;北斗一号建设正式启动&#xff0c;党中央决策建设独立自主的北斗卫星导航系统。2020年7月31日&#xff0c;北斗三号全球卫星导航系统正式开通&#xff0c;标志着北斗系统进入全球化发展新阶段。随着2024年的到来&#xff0c;北斗系统建设已走过栉风沐…

上位机图像处理和嵌入式模块部署(树莓派4b与视觉slam十四讲)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 实际使用中&#xff0c;树莓派4b是非常好的一个基础平台。本身板子价格也不是很贵&#xff0c;建议大家多多使用。之前关于vslam&#xff0c;也就是…

ChatGPT实战100例 - (18) 用事件风暴玩转DDD

文章目录 ChatGPT实战100例 - (18) 用事件风暴玩转DDD一、标准流程二、定义目标和范围三、准备工具和环境四、列举业务事件五、 组织和排序事件六、确定聚合并引入命令七、明确界限上下文八、识别领域事件和领域服务九、验证和修正模型十、生成并验证软件设计十一、总结 ChatGP…

力扣HOT100 - 108. 将有序数组转换为二叉搜索树

解题思路&#xff1a; 二叉搜索树一般使用中序遍历 class Solution {public TreeNode sortedArrayToBST(int[] nums) {return helper(nums,0,nums.length-1);}public TreeNode helper(int[] nums,int left,int right){if(left>right) return null;//确定根节点//总是选择中…