#include <stdio.h>
#define FORMAT "%s! C is cool!\n"
int main(void)
{
printf(FORMAT,FORMAT);
这个打印结果
为啥第二个%s没了,这是咋替换的。
#include <stdio.h>
#define FORMAT "%s! C is cool!\n"
int main(void)
{
printf(FORMAT,FORMAT);
这个打印结果
把FORMAT直接用后面的串替换
相当于
printf("%s! C is cool!\n","%s! C is coll!\n");
打印效果就是用后面的串替换掉前面串中的%s就是了,即:
%s! C is coll!\n! C is cool!\n,\n表示换行,所以结果就是
%s! C is coll!
! C is cool!
printf只有前面的串中的%是格式化符号,后面的串只是内容
明白了吗?