【C/C++ 学习笔记】数据类型

news/2024/7/27 8:52:14/文章来源:https://blog.csdn.net/m0_66681776/article/details/136581409

【C/C++ 学习笔记】数据类型

视频地址: Bilibili

数据类型用于给变量分配合适的内存空间

整型

数据类型占用空间取值范围
short2 [ − 2 15 , 2 15 − 1 ] [-2^{15}, 2^{15}-1] [215,2151]
int4 [ − 2 31 , 2 31 − 1 ] [-2^{31}, 2^{31}-1] [231,2311]
longWindows 为 4 字节,Linux 为 4 字节(32 位)或 8 字节(64 位)
long long8 [ − 2 63 , 2 63 − 1 ] [-2^{63}, 2^{63}-1] [263,2631]

将取值范围记为 [min, max],假设数组 num 超过了上界,则 n u m 内存 = m i n + n u m 真实 − m a x − 1 num_{内存} = min + num_{真实} - max - 1 num内存=min+num真实max1,假设数组 num 超过了下界,则 n u m 内存 = m a x + n u m 真实 − m i n + 1 num_{内存} = max + num_{真实} - min + 1 num内存=max+num真实min+1

利用 sizeof 关键字可以统计数据类型的内存大小

实型(浮动型)

数据类型占用空间取值范围
float47 位有效数字
double815 ~ 16 位有效数字
  • 在 C++ 中,小数点前的部分也属于有效数字
  • 默认情况下,编辑器会把小数当作双精度,通过在小数后面加一个 f 表示是单精度
  • 默认情况下,无论是 float 还是 double 只会打印展示 6 个有效数字
  • 可以用 xey 表示 x ∗ 1 0 y x * 10^{y} x10y

字符型

  • 用于表示单个字符,只能用单引号且仅有 0/1 个字符
  • 占用 1 个字节内存
  • 不会把字符本身放在内存,而是把 ASCII 编码放入存储单元
  • 通过强转可以得到字符的 ASCII 编码

转义字符

用于表示一些不能显示出来的特殊 ASCII 字符

转义字符含义
\a警报
\b退格
\f换页
\n换行,光标移到下一行开头
\r回车,光标移到当前行开头
\t垂直指表
\v垂直制表

\t 是 8 格

字符串类型

用于表示一串字符

C 语言风格

char str[] = "Hello";

C++ 语言风格

#include <string>string str[] = "Hello";

需要引入头文件

布尔类型

代表真或假的值,只有两个值 true / false,占用一个字节

只要是非 0 值都为真

打印布尔类型会显示 0 / 1

数据输入

用于从键盘获取数据 cin >> 变量

全部代码

#include <iostream>
#include <string>using namespace std;int main() {short num1 = -32770;int num2 = 20;long num3 = 30;long long num4 = 40;cout << num1 << endl;cout << "Size of short: " << sizeof(num1) << endl;cout << num2 << endl;cout << "Size of short: " << sizeof(num2) << endl;cout << num3 << endl;cout << "Size of short: " << sizeof(num3) << endl;cout << num4 << endl;cout << "Size of short: " << sizeof(num4) << endl;float num5 = 3.14f;double num6 = 3.1415926;cout << num5 << endl;cout << "Size of short: " << sizeof(num5) << endl;cout << num6 << endl;cout << "Size of short: " << sizeof(num6) << endl;char ch = 'A';cout << ch << endl;cout << "Size of short: " << sizeof(ch) << endl;cout << "Ascii: " << (int)ch << endl;char str1[] = "Hello";string str2 = "World";cout << str1 << endl;cout << "Size of short: " << sizeof(str1) << endl;cout << str2 << endl;cout << "Size of short: " << sizeof(str2) << endl;bool flag = true;cout << flag << endl;cout << "Size of short: " << sizeof(flag) << endl;int int1;cin >> int1;cout << "The input is: " << int1 << endl;return 0;
}

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

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

相关文章

【排序】详解冒泡排序

一、思想 冒泡排序的基本思想是利用两两比较相邻记录的方式&#xff0c;通过一系列的比较和交换操作&#xff0c;使得较大或较小的元素逐渐移动到数列的一端。在每一轮的排序过程中&#xff0c;都会从数列的起始位置开始&#xff0c;对相邻的元素进行比较&#xff0c;如果它们…

Using WebView from more than one process

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业变现、人工智能等&#xff0c;希望大家多多支持。 未经允许不得转载 目录 一、导读二、概览三、问题过程源码追踪…

同时上内网和外网(笔记本自带的无线网卡和另外购置无线网卡)

同时上内网和外网 两无线网卡连接内外网插入新网卡后&#xff0c;重命名网卡名字信息收集IPv4属性设置永久路由 两无线网卡连接内外网 插入新网卡后&#xff0c;重命名网卡名字 两网卡同时连接网络&#xff0c;使用ipconfig /all 获取信息&#xff0c;整理如下&#xff1a; 下…

「2024指南」tf卡格式化了数据怎么恢复?

咨询&#xff1a;我把TF卡插入了我的安卓手机并将其设为内部存储&#xff0c;然后保存了大量重要资料。不久后&#xff0c;我无意中将TF卡拔出。当我再次插入时&#xff0c;手机提示必须格式化TF卡。我不小心点击了格式化选项&#xff0c;导致里面所有重要的资料都不见了。请问…

Java List集合取交集的八种不同实现方式

码到三十五 &#xff1a; 个人主页 心中有诗画&#xff0c;指尖舞代码&#xff0c;目光览世界&#xff0c;步履越千山&#xff0c;人间尽值得 ! 在Java中&#xff0c;取两个List集合的交集可以通过多种方式实现&#xff0c;包括使用Java 8的Stream API、传统的for循环遍历、使…

【SpringCloud】微服务重点解析

微服务重点解析 1. Spring Cloud 组件有哪些&#xff1f; 2. 服务注册和发现是什么意思&#xff1f;Spring Cloud 如何实现服务注册和发现的&#xff1f; 如果写过微服务项目&#xff0c;可以说做过的哪个微服务项目&#xff0c;使用了哪个注册中心&#xff0c;常见的有 eurek…

20240308-2-校招前端面试常见问题-网络及浏览器

校招前端面试常见问题【4】——网络及浏览器 1、网络相关 Q&#xff1a;请简述一下 HTTP 协议&#xff0c;以及 HTTP1.0/1.1/2.0/3.0 的区别&#xff1f; HTTP 协议&#xff1a;超文本传输协议&#xff0c;使用 TCP/IP 协议传输数据。是一个应用层的协议。 HTTP1.0&#xff…

专业140+总430+电子科技大学858信号与系统考研经验成电电子信息与通信工程,电科大,真题,大纲,参考书。

今年考研成绩出来&#xff0c;初试专业课858信号与系统140&#xff0c;总分430&#xff0c;其余各门分数都比较平稳&#xff0c;总分好于自己估分&#xff0c;应群里很多同学要求&#xff0c;我总结一下自己的复习经验。首先我是一个大冤种&#xff0c;专业课资料学长给了一套&…

tomcat优化与部署(三)------nignx优化与nginx +tomcat 部署

在目前流行的互联网架构中&#xff0c;Tomcat在目前的网络编程中是举足轻重的&#xff0c;由于Tomcat的运行依赖于JVM&#xff0c;从虚拟机的角度把Tomcat的调整分为外部环境调优 JVM 和 Tomcat 自身调优两部分 Tomcat 是一个流行的开源 Java 服务器&#xff0c;用于托管 Java …

ai写作一键生成文章速度快

ai写作是一种基于人工智能技术的自动写作工具&#xff0c;它可以根据用户提供的主题或关键词&#xff0c;快速一键生成文章。与传统的手动写作相比&#xff0c;ai写作的速度更快&#xff0c;效率更高。下面小编就带大家一起来见识下ai写作一键生成文章的速度是如何之快&#xf…

Ulysses for macOS v33.1 写作应用 兼容 M1/M2

Ulysses 是面向 Mac、iPhone 和 iPad 的一站式写作环境。Ulysses 提供令人愉悦、专注的写作体验&#xff0c;加上高效文稿管理、无缝同步以及灵活导出&#xff0c;因此是各种写作人士的第一选择。 应用介绍 Ulysses 是面向 Mac、iPhone 和 iPad 的一站式写作环境。Ulysses 提供…

Linux centos 常用的网络负载和网速查看工具和命令

在 CentOS 上查看网络速度和网络负载&#xff0c;可以使用多种工具&#xff0c;以下是一些常用的命令行工具&#xff1a; iftop - 用于实时监视网络带宽使用情况。 安装命令&#xff1a; sudo yum install iftop 使用命令&#xff1a; sudo iftop nload - 一个简单的控制…

怎么做不限扫码次数的文件活码?文件可长期扫描展现下载

如何制作不限扫码次数的文件二维码呢&#xff1f;将文件转二维码后分享给其他人&#xff0c;是现在非常方便的一种文件传输方式。很多小伙伴在制作文件二维码的时候&#xff0c;比较担心的一个问题&#xff0c;就是二维码可以扫码的次数&#xff0c;担心达不到自己预期的效果&a…

JVM系列:垃圾回收器(GC)

JVM系列&#xff1a;垃圾回收器&#xff08;GC&#xff09; &#x1f600; 执行引擎将class文件加载至JVM内存中运行。在运行过程中&#xff0c;需要在内存中动态创建和销毁对象。在传统的C/C语言中&#xff0c;需要手动进行对象销毁以避免内存泄漏。而在Java中&#xff0c;引入…

有名信号量、网络协议模型、UDP编程发送端

我要成为嵌入式高手之3月5日Linux高编第十五天&#xff01;&#xff01; ______________________________________________________ 学习笔记 有名信号量 1、创建semget #include <sys/types.h> #include <sys/ipc.h> #include <sys/sem.h> int semget(…

下载一些ROS的包的方式

ROS Index 我们可以去ROS Index网站下载一些我们需要的包。打开浏览器在网址框输入index.ros.org。或者点击此处链接ROS Index 在这个网站中我们可以浏览并找到我们需要的包&#xff0c;也可以下载它的源代码或者仅安装到我们的系统中来使用。&#xff08;安装过程在终端中进行…

云计算 3月5号 (DNS域名解析及部署)

DNS域名解析服务 1.DNS介绍 DNS 是域名系统 (Domain Name System) 的缩写&#xff0c;是因特网的一项核心服务&#xff0c;它作为可以将域名和IP地址相互映射的一个分布式数据库&#xff0c;能够使人更方便的访问互联网&#xff0c;而不用去记住能够被机器直接读取的IP数串。…

如何防御udp攻击

UDP Flood是互联网上最经典的DDoS&#xff08;Distributed Denial of Service&#xff09;攻击之一。攻击者在短时间内向目标设备发送大量的UDP报文&#xff0c;导致链路拥塞甚至网络瘫痪。一般的UDP报文由攻击工具伪造&#xff0c;通常在数据段具备相同的特征&#xff0c;另一…

Hadoop的UI页面介绍

文章目录 前言一、HDFS的UI页面介绍1. 概述页面2. 数据节点页面2.1 单个数据节点信息页面 3. 数据卷故障信息页面4. 快照信息页面5. 启动进度信息页面6. 文件系统页面 二、YARN的UI页面介绍1. 应用程序页面2. 集群相关信息页面3. 集群节点信息页面4. 应用程序调度信息页面5. 工…

请编程输出无向无权图各个顶点的度 ← STL vector 模拟邻接表存图

【题目描述】 请利用 STL vector 模拟邻接表存图&#xff0c;编程输出无向无权图各个顶点的度。【输入样例】 5 6 1 3 2 1 1 4 2 3 3 4 5 1【输出样例】 4 2 3 2 1【算法分析】 本例利用 STL vector 模拟实现邻接表。代码参见&#xff1a;https://blog.csdn.net/hnjzsyjyj/arti…