• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

下面的宏定义语句是不是正确的?

skawu 2018-05-27 浏览量:864

#define print(x) printf("this is no"#x"num")

这样写是不是可以?中间的#号是连接符吗?

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • ##是连接符,#x是字符转换的意思,比如#115200转换成“115200”
    • 发布于 2018-05-27
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:8
  • 不能这么写,#在这个位置不能算连接符
    • 发布于2018-05-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 连接符应该是##,不是一个#。一个# 是把x变成字符串。

    printf的语法也不对。这里面成了三个字符串了

    • 发布于2018-05-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 这样不对啊,后面的printf打印的是一串字符,没有接收前面print中x值的变量
    • 发布于2018-05-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 你的printf的语法不对,可以使用%d来输出这个值。
    • 发布于2018-05-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 是不正确,替换后展不开的,会有语法错误。
    • 发布于2018-05-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 不正确,这里应该是##,那个X在这里没有意义
    • 发布于2018-06-10
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

下面的宏定义语句是不是正确的?