gpt4 book ai didi

c - 带参数的字符串宏扩展。 C

转载 作者:太空宇宙 更新时间:2023-11-04 00:00:37 24 4
gpt4 key购买 nike

<分区>

这个问题快把我逼疯了。出于元编程的原因,我需要将可变参数宏扩展为字符串。

我的代码是这样的:

#define macro(A, B) "Lorem "#A" ipsum "#B

void main () {
printf (macro(1, 2));
}

所以这将打印出:Lorem 1 ipsum 2。

问题是我需要将一个变量与一个整数相加,所以我尝试了以下操作:

#define macro(A, B) "Lorem "#A" ipsum "#B

void main () {
int x = 1;
printf (macro(x+1, 2));
}

和:

#define macro(A, C, B) "Lorem "#(A+C)" ipsum "#B

void main () {
int x = 1;
printf (macro(1, x, 2));
}

但是这些对我都不起作用,难道不可能吗?或者也许有办法做到这一点。

我不能只使用带有参数的 printf,我需要的是将宏扩展为字符串。

提前致谢。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com