面窝米饺 2020-07-09 11:14 采纳率: 100%
浏览 1045
已采纳

为何使用VS CODE 编译C代码时,#define宏定义无法正常使用

1.问题描述

使用VS CODE对《C primer plus中文版(第五版)》作业进行编写调试时,程序报错,无法正常使用#define宏定义。

2.代码

/*
使用for循环嵌套,最终输出
        $$$$$$$$
        $$$$$$$$
        $$$$$$$$
        $$$$$$$$
*/
#include <stdio.h>
#include <stdlib.h>
 #define number  8 ;
 #define row     4 ;

main()
{
   int i,j;
   char symbol = '$';
   for(i = 0; i < row;  i++ )
   {
       for (j = 0; j < number; j++)
       printf("%c",symbol);
       printf("\n");
   }
}

3报错

tempCodeRunnerFile.c: In function 'main':
tempCodeRunnerFile.c:17:22: error: expected expression before ';' token
    for(i = 0; i < row;  i++ )
                      ^
tempCodeRunnerFile.c:19:30: error: expected expression before ';' token
        for (j = 0; j < number; j++)
                              ^
PS C:\Users\zdl19\Desktop\TEST>

4处理方法

将主函数内“row”替换成“4”,“number”替换成“8”,程序编译通过,运行正常。

  • 写回答

1条回答 默认 最新

  • qq_29366533 2020-07-09 11:19
    关注

    #define语句 结尾不要分号

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 设计一个二极管稳压值检测电路
  • ¥15 内网办公电脑进行向日葵
  • ¥15 如何输入双曲线的参数a然后画出双曲线?我输入处理函数加上后就没有用了,不知道怎么回事去掉后双曲线可以画出来
  • ¥50 WPF Lidgren.Network.Core2连接问题
  • ¥15 soildworks装配体的尺寸问题
  • ¥100 有偿寻云闪付SDK转URL技术
  • ¥30 基于信创PC发布的QT应用如何跨用户启动后输入中文
  • ¥20 非root手机,如何精准控制手机流量消耗的大小,如20M
  • ¥15 远程安装一下vasp
  • ¥15 自己做的代码上传图片时,报错