用printf打印uint64_t的符号

在32位平台 typedef unsigned long long int uint64_t;
在64位平台 typedef unsigned long int uint64_t;
不同的typdef,要求在printf中使用不同的length modifier,uint64_t 在32位使用ll,在64位使用l。除了定义数据类型,C99还定义了相应数据类型的打印方式,使用PRIu64打印uint64,举例如下:

[cpp] view plain copy print ?
  1. #include
  2. #include
  3. int main(int argc, char *argv[])
  4. {
  5. uint64_t u64 = 100;
  6. printf("uint64: %"PRIu64"\n", u64);
  7. return 0;
  8. }
#include 
#include 


int main(int argc, char *argv[])
{
    uint64_t u64 = 100;
    printf("uint64: %"PRIu64"\n", u64);
    // printf("uint64: %lu\n", u64);   x86_84
    // printf("uint64: %llu\n", u64);  x86
    return 0;
}

除了PRIu64外,inttypes.h还定义了其它数据类型对应的宏。另外,如果是c++程序,需要定义__STDC_FORMAT_MACROS宏。
阅读(35) | 评论(0) | 转发(0) |
0

上一篇:算法导论-堆排序学习笔记

下一篇:算法导论-动态规划

相关热门文章
  • c语言中的%4d是什么意思?...
  • 无锡博凌激光打标机的优越性...
  • Boa移植步骤
  • Linux SSH常用命令合集
  • 内联汇编
  • test123
  • 编写安全代码——小心有符号数...
  • 使用openssl api进行加密解密...
  • 一段自己打印自己的c程序...
  • sql relay的c++接口
  • 这样配置的服务器能够承受8k并...
  • vm里的系统能够ping到nfs,但...
  • bind是否随机从两台master中读...
  • 在win7下用cygwin搭建hadoop,...
  • Mysql的binglog日志能否分库备...
给主人留下些什么吧!~~
评论热议

你可能感兴趣的:(C/C++)