首页 / 知识
关于c ++:宏以测试整数类型是带符号还是无符号
2023-04-15 11:30:00

Macro to test whether an integer type is signed or unsigned您将如何编写(在C / C ++中)用于测试整数类型(作为参数)是带符号还是无符号的宏?
在C ++中,使用
请参阅http://msdn.microsoft.com/zh-cn/library/85084kd6(VS.80).aspx。 如果您想要的是一个简单的宏,则可以做到这一点:
如果您想要一个宏,那么这应该可以解决问题:
基本上,将-1强制转换为您的类型,然后查看它是否仍为-1。在C ++中,您不需要宏。只需
您的要求并不完全是最好的,但是如果您想一起定义一个定义,则一个选择可能是:
但是,无论如何,这都不被认为是好的或可移植的。
目前,
此代码将打印
在C ++中,您可以执行以下操作:
numeric_limits在 我实际上只是想知道今天早些时候的同一件事。以下似乎有效:
我测试了:
打印:
一种更"现代"的方法是使用
对于c ++,存在boost :: is_unsigned < T >。我很好奇为什么您需要它,恕我直言,没有什么充分的理由。 在C语言中,您无法编写可用于基本整数类型的迄今未知typedef的宏。 在C ++中,只要您的类型是基本整数类型或基本整数类型的typedef,就可以。这是您在C ++中要做的事情:
您可以使用模板功能更好地做到这一点,减少宏观麻烦的业务。
原谅格式... 我会尝试一下,看看是否可行... |
最新内容
相关内容
linux过滤命令参数?
linux过滤命令参数?,工具,数据,标准,地址,命令,设备,系统,信息,指令,文件,如何通过linux命令根据某一列值唯一来过滤数据(1)定义你的敏感命令列linux下ls命令参数?
linux下ls命令参数?,时间,系统,数据,命令,文件,信息,标准,密码,工作,名字,linux下ls命令1、ls 指令是Linux下最常用的命令之一,也是一条非常古linux参数设置命令?
linux参数设置命令?,网络,系统,地址,工作,信息,管理,服务,名称,状态,命令,在linux下如何通过命令查网卡配置linux查看系统网卡信息的命令包括:ilinux命令du参数?
linux命令du参数?,工作,信息,系统,情况,单位,地址,命令,报告,时间,数据,在LINUX命令中du的-s参数?1、Du(Disk Usage)命令功能说明:统计目录(或linux命令参数r与k?
linux命令参数r与k?,工作,地址,系统,信息,命令,目录,管理,标准,基础,控制台,30个必知的Linux命令技巧,你都掌握了吗1、su:切换用户身份。sudo:以linuxrm命令参数?
linuxrm命令参数?,系统,命令,文件,目录,环境,档案,文件夹,终端,参数,子目录,linux删除目录命令linux删除目录命令是Linux rm命令。rm即linux命查看linux类型命令?
查看linux类型命令?,系统,信息,命令,状态,数据,数字,情况,地址,类型,文件,linux查看系统命令是什么1、linux怎么查看系统版本呢,下面就让我们来linux删除类型命令?
linux删除类型命令?,系统,档案,命令,文件,名称,环境,数据,不了,目录,文件夹,关于linux的删除命令命令格式:rm [选项] 文件… 命令功能:删除一个linux命令行定义参数?
linux命令行定义参数?,系统,信息,名称,实时,命令,百分比,工作,周期,选项,参数,在linux系统中每一个命令都只有一种参数可以设定对吗?Linux命令linux命令查询参数?
linux命令查询参数?,网络,信息,设备,系统,服务,状态,情况,工作,地址,命令,Linux常用命令1、linux系统常用操作命令如下:ls:全拼list,功能是列出目linux网络参数命令?
linux网络参数命令?,网络,地址,系统,工作,信息,工具,情况,服务,状态,命令,Linux配置网络参数之IP地址、子网掩码、网关地址,DNSlinux一般使用ilinux的cd命令参数?
linux的cd命令参数?,工作,地址,系统,命令,一致,目录,信息,基础,名称,管理,linux常用命令及用法linux系统常用操作命令如下:ls:全拼list,功能是列