c - C语言将数字打印成字符串

标签 c string macros enums digital

#include <stdio.h>

#define stringify(s)    tostring(s)
#define tostring(s)     #s

#define MAX_VALUE 65536
#define NUM 64 * 1024

enum {
    MIN_VALUE = 1024,
};

int main(int argc, char *argv[])
{
    const char *max_str = stringify(MAX_VALUE);
    const char *min_str = stringify(MIN_VALUE);
    printf("max = %s, min = %s\n", max_str, min_str);
    return 0;
}

输出为“max = 65536, min = MIN_VALUE num = 1024 * 64” 专家,我怎样才能修改我的代码输出这样的: 最大 = 65536,最小 = 1024 num = 65536

谢谢。

最佳答案

MIN_VALUE 是一个数字。为什么需要对其进行字符串化?

只需使用:

printf("%d\n", MIN_VALUE);

关于c - C语言将数字打印成字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14494863/

相关文章:

c - 如何找到第n个数?

c - 触发 inotify 文件更改事件

c - 为什么 gets() 可以正常工作,而 fgets() 却不能?

java - 正则表达式与 Java 中文本文件中的字符串不匹配

parsing - 有没有办法在宏中实现可选表达式?

c++ - 简单的反射机制

C 宏一次性定义多个变量

c - Linux C 中的 Serial read() 问题

java - 将 JTextField 输入转换为整数

c++ - 使用boost库将句子中每个单词的首字母大写