How can one print a size_t variable portably using the printf family?

前端 未结 12 1126
时光说笑
时光说笑 2020-11-22 05:40

I have a variable of type size_t, and I want to print it using printf(). What format specifier do I use to print it portably?

In 32-bit ma

12条回答
  •  梦谈多话
    2020-11-22 05:44

    For C89, use %lu and cast the value to unsigned long:

    size_t foo;
    ...
    printf("foo = %lu\n", (unsigned long) foo);
    

    For C99 and later, use %zu:

    size_t foo;
    ...
    printf("foo = %zu\n", foo);
    

提交回复
热议问题