c语言中宏的输出

来源:百度知道 编辑:UC知道 时间:2024/06/17 14:36:17
函数中定义了带参数的宏,输出时是否可以用%s格式输出。
题目要求:定义一个带参数的宏,使两个参数的值互换,并写出程序,输入两个数作为使用宏时的实参。输出已交换后的两个值。
我试着写了下面这一小段,没有报错,却得不到正确答案。谁能帮忙解释解释。
#include<stdio.h>
#define S(a,b) b,a
main()
{int i,j;
scanf("%d%d",&i,&j);
printf("%s\n",S(i,j));
}
用%s输出的字符串中能包含数字吗

#include<stdio.h>
#define S(a,b) b,a
main()
{int i,j;
scanf("%d%d",&i,&j);
printf("%d %d",S(i,j));
}
不能用%s输出

%s输出的字符串能带数字
比如定义char a[20]="abcd123" 则printf("%s",a)输出abcd123