【自学C++】C++ short

news2024/11/19 21:26:55

C++ short

C++ short教程

C++ 中的 short 用来表示一个 整数,也可以叫做短整型,如果我们需要表示的整数比较小,那么我们可以使用 short 来定义,这样可以节省系统资源。

C++ short定义详解

语法

short int varname = value;
short varname1 = value2;  //简写形式

参数

参数描述
short int定义 short 类型变量使用的类型。
varname变量名。
value可选,变量的初始值,该值不可以超过 short 类型的最大值。

说明

使用 short int 定义了一个 short 类型的变量 varname,并赋初值为 value。同时,我们可以直接使用 short 来定义一个 short 类型的变量。

C++ short详解

说明描述
取值范围-32768 ~ 32767
字节数2
格式化符%hd

说明

C++ 的 short 的取值范围为 -32768 ~ 32767,同时,在 limits.h 中有 常量 SHRT_MIN 表示其最小值和 SHRT_MAX 表示其最大值。

案例

定义short变量

使用 short int 定义 short 变量

#include <iostream>
using namespace std;

int main(int argc, char **argv)
{
	cout << "嗨客网(www.haicoder.net)\n" << endl;
	
	short int a = 100;
	short int b = 200, c = 300, d = 1024;

	cout << "a = " << a << endl;
	cout << "b = " << b << " c = " << c << " d = " << d << endl;
}

程序运行后,控制台输出如下:

请添加图片描述

我们首先,定义了一个 short 类型的变量 a,并初始化为 100,接着,我们一次定义了三个 short 类型的变量,分别为 b,c 和 d,并分别初始化。

最后,我们使用了 cout 打印了我们定义的四个变量的值。

简写short变量

使用 short 定义 short 变量

#include <iostream>
using namespace std;

int main(int argc, char **argv)
{
	cout << "嗨客网(www.haicoder.net)\n" << endl;
	
	short sa = 1024;
	cout << "sa = " << sa << endl;
}

程序运行后,控制台输出如下:

请添加图片描述

我们定义 short 变量时,也可以直接使用 short 就可以了,而没有使用 short int。

short变量取值范围

使用 limits.h 获取 short 的取值范围

#include <iostream>
#include <climits>
using namespace std;

int main(int argc, char **argv)
{
	cout << "嗨客网(www.haicoder.net)\n" << endl;
	
	short shortMin = SHRT_MIN;
	short shortMax = SHRT_MAX;
	
	cout << "shortMin = " << shortMin << " shortMax = " << shortMax << endl;
}

程序运行后,控制台输出如下:

请添加图片描述

我们首先,使用 include 引入了 limits.h 头文件,接着,我们使用了常量 SHRT_MIN 和 SHRT_MAX 分别获取了 short 类型的最小值和最大值。

同时,我们将最小值和最大值分别赋值给了变量 shortMin 和 shortMax,最后,我们使用 cout 输出了 short 类型的最大值和最小值。

short变量超出范围

如果变量超出了 short 范围,结果未知

#include <iostream>
#include <climits>
using namespace std;

int main(int argc, char **argv)
{
	cout << "嗨客网(www.haicoder.net)\n" << endl;
	
	short shortMin = SHRT_MIN - 100;
	short shortMax = SHRT_MAX + 100;
	
	cout << "shortMin = " << shortMin << " shortMax = " << shortMax << endl;
}

程序运行后,控制台输出如下:

请添加图片描述

我们分别定义了一个 short 类型的变量 shortMin 和 shortMax,同时,我们将 shortMin 赋值为 short 类型的最小值还减去 100,将 shortMax 赋值为 short 类型的最大值还加上 100。

最后,我们输出了 shortMin 和 shortMax,我们发现,此时的 shortMin 的值和 shortMax 的值已经不是正确的值了,已经发生了溢出。

因此,我们定义变量时,变量的值一定不要超过变量的取值范围。

short字节数

使用 sizeof,获取 short 的字节

#include <iostream>
using namespace std;

int main(int argc, char **argv)
{
	cout << "嗨客网(www.haicoder.net)\n" << endl;
	
	short sNum = 100;
	cout << "sizeof short = " << sizeof(sNum) << endl;
}

程序运行后,控制台输出如下:

请添加图片描述

我们使用 sizeof 获取了 short 变量所占的字节数,结果,输出了 2,即 short 占 2 字节。

C++ short总结

C++ 的 short 的取值范围为 -32768 ~ 32767,short 占 2 个字节。

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

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

相关文章

【django】关联模型类中数据的增删改查操作总结

文章目录一、多对一正向操作1、改方法一方法二2、删3、查反向操作案例1&#xff1a;查询百度渠道下的所有学生信息案例2&#xff1a;新增一个百度渠道下的学生1、增直接创建Student对象2、改方法一&#xff1a;add()案例1&#xff1a;将s1,s2,s3添加到百度渠道中方法二:替换对象…

【Java】遨游在多线程的知识体系中(二)

前言&#xff1a;一、分析上篇多线程不安全原因1. count 操作是三个步骤&#xff0c;load add save2. 多个线程之间的调度是无序的&#xff0c;两个线程的上述三个操作可能存在多种不同的相对顺序3. 线程针对变量的修改不是原子的4. 内存可见性5.指令重排序二、synchronize 关键…

Java中clone的浅拷贝和深拷贝区别以及方法详解

克隆定义 在 Java 中&#xff0c;克隆是创建原始对象的精确副本的过程。它本质上意味着能够创建一个与原始对象具有相似状态的对象。 复制对象&#xff0c;首先要分配一个和源对象同样大小的空间&#xff0c;在这个空间中创建一个新的对象。 new对象和clone区别 使用new操作符创…

Python批量采集无水印短视频内容

前言 短视频流行起来可不是一年两年了&#xff0c;现在很多年轻人都在玩短视频&#xff0c;有些的单纯就是看看&#xff0c;而有些的就是自己发视频 我每天刷视频&#xff0c;一刷就停不下来&#xff0c;应该还是有蛮多人跟我一样的吧 那有没有想法用自己所学的python知识&a…

Linux管道——进程间通信(匿名管道、命名管道)

文章目录一、进程间通信1.1 进程间通信的概念1.2 进程间通信的目的1.3 进程间通信的本质1.4 进程间通信的分类二、管道2.1 匿名管道① 匿名管道的使用场景② 匿名管道实现通信的原理③ 创建匿名管道 pipe函数④ fork共享管道⑤ 匿名管道的五个特点⑥ 匿名管道的四种特殊情况2.2…

开发模型和测试模型,考点归纳,你都记住了吗?

目录 前言 一、开发模型 1.1、瀑布模型 1.2、螺旋模型 1.3、迭代模型和增量模型 1.4、敏捷模型 敏捷开发最流行的方式——scrum模型 二、测试模型 2.1、V模型 2.2、W模型&#xff08;双V模型&#xff09; 前言 对于模型&#xff0c;需要重点掌握特点&#xff0c;缺点&…

模板编程:constexpr +特例化 判断质数

重点&#xff1a; 1.constexpr 函数支持在编译期间完成计算 2.特例化是模板中一种定义 using namespace std;//编译期进行判断 constexpr bool isPrime(unsigned int p) {for (unsigned int d2;d<p/2;d){if (p % d 0){return false;}}return p > 1; }template<int…

python爬虫入门

基础知识 HTTP协议 我们浏览网页的浏览器和手机应用客户端与服务器通信几乎都是基于HTTP协议&#xff0c;而爬虫可以看作是一个另类的客户端&#xff0c;它把自己伪装成浏览器或者手机应用客户端&#xff0c;按照自己的逻辑贪婪的向服务器索取数据&#xff0c;如何向服务器索…

【实操篇】Linux的网络环境及其配置

目录 ●Linux网络环境原理图&#xff08;NAT模式&#xff09; ●虚拟网络编辑器对虚拟网卡ip进行修改&#xff08;VMnet-&#xff09; ●查看网关( VMnet8->WLAN) ●Linux网络ip配置 1.修改配置文件去获取固定ip 2.自动获取ip连接网络 ●Linux网络环境原理图&#xff…

【vue2】计算属性(computed)与侦听器(watch)详解

&#x1f973;博 主&#xff1a;初映CY的前说(前端领域) &#x1f31e;个人信条&#xff1a;想要变成得到&#xff0c;中间还有做到&#xff01; &#x1f918;本文核心&#xff1a;计算属性与侦听属性的用法 目录&#xff08;文末有给大家准备好的Xmind思维导图&#xf…

JAVA单商户商城系统源码,前(vue)后(SpringBoot)端分离,支持多平台(h5,小程序,app)

前言 完整代码下载地址&#xff1a;JAVA单商户商城系统源码 linjiashop 是一个基于Spring Boot和Vue.js的web商城系统 linjiashop 包含了商城的后台管理系统,手机h5&#xff0c;小程序版本 linjiashop 采用web-flash作为底层基础框架搭建&#xff0c;开发过程遇到问题请多阅…

Js中闭包的概念和具体使用

前言闭包在js里面是一个比较抽象的概念,但在面试里,是一个必问的话题,往往面试官希望你列举一些使用闭包的例子或手写一个闭包闭包,简单一句话讲就是能够读取其他函数内部变量的函数,当需要函数内容部的变量被外部的代码所访问时那闭包就非常有用了的,如今,很多框架里面的高级特…

Spring整合Mybatis和Junit

文章目录1 Spring整合Mybatis环境搭建整合步骤使用的注解详解2 Spring整合Junit整合Junit步骤使用的注解详解1 Spring整合Mybatis 大体需要做两件事&#xff0c; 第一件事是:Spring要管理MyBatis中的SqlSessionFactory 第二件事是:Spring要管理Mapper接口的扫描 具体该如何实现…

6.Isaac教程--在 C++ 中开发 Codelet

在 C 中开发 Codelet 本教程的目标是用 C 开发两个小码&#xff1a;第一个实际上是一台“ping”的机器&#xff0c;而第二个侦听并摄取“ping”消息。 对于本教程&#xff0c;不需要外部依赖项或特殊硬件。 文章目录在 C 中开发 Codelet创建新应用程序为应用程序创建一个新目录…

【Linux】Linux的基本指令(一)

文章目录1、ls 指令2、pwd 命令3、cd 指令4、touch 指令5、mkdir 指令6、rmdir和rm 指令7、man 指令8、cp 指令9、mv 指令10、cat11、echo(输出&#xff0c;输入&#xff0c;追加重定向)12、wc13、more14、less1、ls 指令 语法&#xff1a; ls[选项][目录或文件] 功能&#xff…

2. 矩阵(matrix)、数组、列表(list)、数据框(data.frame.....)

课程视频链接&#xff1a;https://www.bilibili.com/video/BV19x411X7C6?p1 本笔记参照该视频&#xff0c;笔记顺序做了些调整【个人感觉逻辑顺畅】&#xff0c;并删掉一些不重要的内容 系列笔记目录【持续更新】&#xff1a;https://blog.csdn.net/weixin_42214698/category_…

电脑总是开机黑屏,开机两次才能成功的解决办法:更新BIOS(七彩虹H410M-T PRO)

参考&#xff1a;七彩虹主板更新BIOS的方法 前段时间电脑出问题了&#xff0c;每当我第一次开机都会黑屏&#xff0c;要强制关机第二次开能开机&#xff0c;导致每次都开机很久很久&#xff0c;心情也不好 有时候开机等他一会&#xff0c;大概两分钟&#xff0c;会报如下错误&a…

C++课程成绩管理与分析系统[2023-01-07]

C课程成绩管理与分析系统[2023-01-07] C实习指导书 编写&#xff1a;潘林 修订&#xff1a;邓吉秋 一、实习目的 学生通过此次实习&#xff0c; 应达到如下要求&#xff1a; 熟练使用一种 C开发环境&#xff0c;包括 IDE 与编译器&#xff1b;掌握 C程序的编写 过程与调试&…

Sentinel 是什么

Sentinel是什么 Sentinel 官网&#xff1a;introduction | Sentinel 随着微服务的流行&#xff0c;服务与服务之间的稳定性变得越来越重要。Sentinel 以流量为切入点&#xff0c;从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 Sentinel 具有以下特征 丰富…

Rancher部署分布式任务调度系统XXL-JOB通过拉取Docker公共镜像方式

通过Rancher部署分布式任务调度系统XXL-JOB我了解到有两种方式&#xff0c;一种是拉取xxl-job的源代码打包通过Jenkins部署&#xff0c;另一种简单的是直接拉取官方镜像&#xff0c;本文主要讲后面这种。 1、打开Docker公共镜像仓库&#xff0c;搜索xxl-job&#xff0c;复制镜…