想必大家都知道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型。多看几遍就记住了。

肯定有人会想这个也太简单了,但是多用几遍,多看几遍,多出几次错,会记得更牢理解的更清楚。
小白还在学习中,欢迎大佬的指点,特别欢迎,感谢感谢。

想必大家都知道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;
printf的格式控制的完整格式:% – 0 m.n l或h 格式字符下面对组成格式说明的各项加以说明:①%:表示格式说明的起始符号,不可缺少。②-:有-表示左对齐输出,如省略表示右对齐输出。③0:有0表示指定空位填0,如省略表示指定空位不填。④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。⑤l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。 ---------------------------------------格式字符格式字符用以指定输出项的数据类型
这样就可以打印出65对应的ASCII码值。 #### 引用[.reference_title] - *1* [C 语言printf打印各种数据类型的方法(u8/s8/u16/s16.../u64/double/float)(转)](https://blog.csdn.net/yikunbai5708/article/details/102002558)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [C语言printf()打印u8,u16,u32参数类型](https://blog.csdn.net/weixin_44261839/article/details/114029128)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ] bind: Cannot assign requested address 1. 第一步,先查一下自己ubuntu的IP地址 hq123@ubuntu:~/a_test$ ifconfig server.sin_addr.s_addr = inet_addr("192.168.50.6"); // 服务器的 IP 地址 2. 第二步 ,bind 绑定的IP地址要和自己电脑(ubuntu)的IP地址一样 server.sin_addr.s_addr = inet_addr("192.168.50.6");
Ubuntu的/mnt/hgfs共享文件夹里面没有东西,VMware tools是灰色 和和快跑: Ubuntu的/mnt/hgfs共享文件夹里面没有东西,VMware tools是灰色 VLADIMIRZOE: 感谢,有用,我的centos8的系统,刚开始没成功,后来把.host:/ /双斜杠中间加了个空格,然后就成了 Ubuntu的/mnt/hgfs共享文件夹里面没有东西,VMware tools是灰色 XiaoJake: