不需要睡觉o 2024-05-11 15:50 采纳率: 94.7%
浏览 0
已结题

对于宏定义一个字符在函数体内部如何引用输出有疑问


/*例:运用函数打印: ****************************************
                                  GIGATHINK,INC.
                                 101 Megabuck Plaza
                                  Megapolis,CA 94904
                      ****************************************
文字居中效果*/
#include<stdio.h>
#include<string.h>
#define NAME "GIGATHINK,INC."
#define ADDRESS "101 Megabuck Plaza"
#define PLACE "Megapolis,CA 94904"
#define SPACE ' '
#define WIDTH 40
void starbar(void);
void space(void);
int main(){
    starbar();
    space();
    printf("%s\n",NAME);
    space();
    printf("%s\n",ADDRESS);
    space();
    printf("%s\n",PLACE);
    starbar();
    return 0;
}
void starbar(){
    int i;
    for(i=0;i<40;i++)
        printf("*");
    printf("\n");
}      
void space(){
    int i;
    for(i=0;i<(WIDTH-strlen(NAME))/2;i++)
    printf("SPACE"); 
    }

这个代码中printf("SPACE"); 这条语句有问题,是不是用了宏定义就只能putchar(SPACE);这么写了

  • 写回答

4条回答 默认 最新

  • 码农阿豪@新空间代码工作室 Java领域优质创作者 2024-05-11 15:50
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    不是,printf("SPACE")这条语句并不是宏定义,它只是输出字符串"SPACE"而已。如果想输出变量SPACE的值,应该使用printf("%c", SPACE);。另外,可以用putchar(SPACE)代替printf("%c", SPACE),因为putchar是专门用来输出单个字符的函数。下面是修改后的代码示例: #define NAME "GIGATHINK,INC." #define ADDRESS "101 Megabuck Plaza" #define PLACE "Megapolis,CA 94904" #define SPACE ' ' #define WIDTH 40 void starbar(void); void space(void); int main(){
    starbar();
    space();
    printf("%s\n",NAME);
    space();
    printf("%s\n",ADDRESS);
    space();
    printf("%s\n",PLACE);
    starbar();
    return 0;
    

    } void starbar(){ int i; for(i=0;i<40;i++) putchar('*'); putchar('\n'); } void space(){ int i; for(i=0;i<(WIDTH-strlen(NAME))/2;i++) putchar(SPACE); }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 5月19日
  • 已采纳回答 5月11日
  • 创建了问题 5月11日

悬赏问题

  • ¥20 python忆阻器数字识别
  • ¥15 无法输出helloworld
  • ¥15 高通uboot 打印ubi init err 22
  • ¥20 PDF元数据中的XMP媒体管理属性
  • ¥15 R语言中lasso回归报错
  • ¥15 网站突然不能访问了,上午还好好的
  • ¥15 有没有dl可以帮弄”我去图书馆”秒选道具和积分
  • ¥15 semrush,SEO,内嵌网站,api
  • ¥15 Stata:为什么reghdfe后的因变量没有被发现识别啊
  • ¥15 振荡电路,ADS仿真