unsigned 是等于 unsigned int

在 C/C++ 里,unsigned 单独写时,等价于 unsigned int

所以,unsigned 就是 unsigned int 的简写 ,但只适用于 int 类型。

c 复制代码
unsigned x;     // 等价于 unsigned int x;
unsigned int a;     
c 复制代码
#include <stdio.h>

#define SAME_TYPE(a, b) _Generic(a, __typeof__(b): 1, default: 0)
int main(){
    unsigned x = 2;     // 等价于 unsigned int x;
    unsigned int y = 2;
    if(x == y){
        printf("x == y\n");
    }else{
        printf("x != y\n");
    }

    if (SAME_TYPE(x, y)) {
        printf("x 和 y 的类型相同\n");
    } else {
        printf("x 和 y 的类型不同\n");
    }
    return 0;
}   

执行结果

c 复制代码
x == y
x 和 y 的类型相同

补充

这是语言标准规定的"简写"形式,其他类型(如 shortlonglong long)都不能这样省略关键字:

c 复制代码
unsigned short y;   // 不能写成 "unsigned y" 或 "short unsigned y"
unsigned long z;    // 不能写成 "unsigned z"

坑~~~~~~~~ 大坑

相关推荐
燃于AC之乐1 小时前
我的算法修炼之路--4 ———我和算法的爱恨情仇
算法·前缀和·贪心算法·背包问题·洛谷
Boilermaker19926 小时前
[Java 并发编程] Synchronized 锁升级
java·开发语言
MM_MS6 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
独自破碎E7 小时前
【二分法】寻找峰值
算法
꧁Q༒ོγ꧂7 小时前
LaTeX 语法入门指南
开发语言·latex
njsgcs7 小时前
ue python二次开发启动教程+ 导入fbx到指定文件夹
开发语言·python·unreal engine·ue
alonewolf_997 小时前
JDK17新特性全面解析:从语法革新到模块化革命
java·开发语言·jvm·jdk
mit6.8247 小时前
位运算|拆分贪心
算法
古城小栈7 小时前
Rust 迭代器产出的引用层数——分水岭
开发语言·rust
ghie90907 小时前
基于MATLAB的TLBO算法优化实现与改进
开发语言·算法·matlab