想必大家都知道printf打印int 型是用%d,但是u8,u16,u32,u64还有s8,s16,s32,s64是如何打印呢,知道的大佬绕行哈,不知道往下看看。
what is u8?
常见的u8其实是自定义的,定义如下:
typedef signed char s8;
typedef unsigned char u8;
typedef signed short s16;
typedef unsigned short u16;
typedef signed int s32;
typedef unsigned int u32;
typedef signed long long s64;
typedef unsigned long long u64;
不难发现:signed->s开头的;unsigned ->u开头的。
如何打印
密密麻麻的怎么记得住呢,可以这样记:u8,s8是char型的可以打印出来ASSIC码(感觉这样理解是对的);u16,s16相当于就是2个字节=short int 用hd%打印;u32,s32是4个字节=int用%u,%d;u64,s64就是8个字节=long long用lld%,llu%打印;然后规律就是带 h 的就是short型,带 l 的就是long型,带 ll 就是long long型。多看几遍就记住了。
感悟
肯定有人会想这个也太简单了,但是多用几遍,多看几遍,多出几次错,会记得更牢理解的更清楚。
小白还在学习中,欢迎大佬的指点,特别欢迎,感谢感谢。