sscanf或者printf怎么表示unsigned short型数据?[已解决]

2019-12-13 18:27发布

本帖最后由 bolizhicheng204 于 2019-2-20 08:56 编辑

sscanf或者printf里面用%u对应是unsigned int型,我想表示unsigned short 网上资料说用%hu  但是这样写会报错,如图所示
请问,我想表示unsigned short但是应该怎么写呢?(不用强制转换)多谢
--------------------------
自问自答,应该是unsigned short  %hu,unsigned char 是%hhu
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
1条回答
styleno1
1楼-- · 2019-12-13 20:39
本帖最后由 styleno1 于 2019-2-20 09:11 编辑

数值转换,与有无符号关系不大。

  1. #include <stdio.h>

  2. int main()
  3. {
  4.     unsigned int i,j;
  5.     char str[] = "-100 100";
  6.     sscanf(str,"%u %u", &i, &j);
  7.     printf("%d %d Hello, World! ", i, j);
  8.     return 0;
  9. }

  10. $gcc -o main *.c
  11. $main
  12. -100 100 Hello, World!
复制代码

类型表示:

TIM截图20190220091101.png (13.75 KB, 下载次数: 0)

下载附件

2019-2-20 09:11 上传

一周热门 更多>