近日在调试代码时遇到一个编译异常,如下所示:
error: expected '}' before numeric constant
对应的代码是一个数组,我使用了编译宏定义来区分不用的功能。
仔细检测了下代码没问题啊,怎么会提示这个异常。
后来分析发现,我把两个编译宏都打开了,去掉一个编译宏就正常了。
墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
3.3w累计阅读
3.4w+平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄18年
近日在调试代码时遇到一个编译异常,如下所示:
error: expected '}' before numeric constant
对应的代码是一个数组,我使用了编译宏定义来区分不用的功能。
仔细检测了下代码没问题啊,怎么会提示这个异常。
后来分析发现,我把两个编译宏都打开了,去掉一个编译宏就正常了。
C语言新手必踩的坑:宏定义和函数参数重名引发的expected ‘,‘ or ‘...‘ before numeric constant报错详解
本文详细解析了C语言新手常见的宏定义与函数参数重名导致的'expected ',' or '...' before numeric constant'编译报错问题。通过实例代码和预处理机制分析,揭示了错误根源,并提供了三种实用的命名规范建议和开发工具使用技巧,帮助开发者避免类似陷阱。
error: expected ‘)’ before numeric constant
一: 问题产生原因 今天在码代码的时候,遇到了很多重复的短小的语句。就想着使用Macro替换。这样在代码看来整洁,短小。可是很奇葩的一件事就是怎么将数字和字符串拼接在一起。参照了之前的前辈们的代码,然后就遇到了题目所示的特奇葩的错误。 二:调试过程 在度娘中游了一遍,只是在StackFlow上看了一篇,但是最终也没有给出错误的原因。无聊的将预编译的代码打印出
别再被这个C编译错误卡住了!手把手教你用GCC/Clang调试‘expected ‘,‘ or ‘...‘ before numeric constant’
本文深入解析C语言编译错误'expected ',' or '...' before numeric constant',揭示其常见触发场景如宏定义与函数参数命名冲突,并提供GCC/Clang调试技巧、IDE配置建议及命名规范等解决方案,帮助开发者高效排查此类编译报错问题。
C [Error] expected ‘,‘ or ‘...‘ before numeric constant问题解决
[Error] expected ',' or '...' before numeric constant问题解决 宏重复定义问题
C: 编译错误:expected identifier or ‘(’ before numeric constant
文章目录错误原因 错误 字面意思,期望一个变量名(标识符),或者在数字常量前面期望一个左括号。 macro.c: In function ‘main’: macro.c:9:6: error: expected identifier or ‘(’ before numeric constant int PIPE_BUF = 0; ^~~~~~~~ 原因 在include linux/limits.h 之后,定义了一个PIPE_BUF 变量。但是在 limit.h 头文件里已经有一个PIPE
TensorFlow GPU版本安装步骤-Windows系统
本文由在Windows下安装TensorFlow GPU版本教程-优快云等整理得到。 目录 1、确认显卡是否支持CUDA 1.1 查看显卡信息 打开“设备管理器”,查看显卡信息,如下图所示: 由上图知,本电脑的显卡为NVIDIA Quadro P400. 1.2 查看支持CUDA的显卡 网址:https://developer.nvidia.com/cuda-gpus 经查询可知,该显卡支持CUDA,如下图所示: 2、安装CUDA 2.1 下载CUDA 网址:https://developer.nvi
一个奇葩的编译错误和解决方案------error: expected identifier before numeric constant
晚上写代码, 写着写着, 我擦, 突然出现一个编译错误: error: expected identifier before numeric constant, 搞得我莫名其妙。 最后, 通过“最小化”程序法, 锁定在一个include处: 加上这样就有问题, 去掉这样就没有问题。 是在找不到设么原因, 去网上查了一下, 原来是枚举冲突了。 也就是两个第三方库的枚举冲突了! 我勒个
车载摄像头+max96712 + rk3568 调试过程中遇到的问题
本文主要讲述本人在调试rk3568通过mipi-csi2链接max967812,max96712再外接4路车载摄像头过程中遇到的问题,以及最终如何解决这些问题。图中会贴上很多重要且关键的波形图,以便读者在调试过程中进行比对,分析。 如果在调试过程中,mipi总线上的波形没得什么问题的话,还是抓图失败的情况下,需要着重检查 频率,lane数,摄像头分辨率,摄像头输入图像格式等重要配置。
Tina编译报错:<command-line>: error: expected identifier or ‘(‘ before numeric constant
枚举冲突
USB接口ESD保护电路:深度剖析与选型建议
USB接口在热插拔和频繁使用中极易遭遇静电放电(ESD)冲击,导致芯片损坏或通信异常。本文结合实际电路设计经验,详解TVS二极管、集成ESD防护器件等方案在USB接口上的应用要点,重点分析钳位电压、结电容、IEC 61000-4-2等级等关键参数对信号完整性与防护效果的影响,助你为USB接口匹配高可靠、低干扰的ESD保护方案。
从接线到组态:手把手教你搞定PROFIBUS-DP与PA的混合网络搭建(基于西门子TIA Portal)
本文详细介绍了PROFIBUS-DP与PA混合网络的搭建方法,基于西门子TIA Portal平台,从硬件选型、网络架构设计到组态配置和现场调试,提供了一套完整的实战指南。重点解析了DP/PA耦合器的使用、地址映射策略及网络诊断技巧,帮助工程师高效构建高可靠性的工业自动化网络。
error: expected identifier or '(' before numeric constant错误解决
在程序编译的时候,发现了error: expected identifier or '(' before numeric constant错误。从网络上查询,发现是difine的变量被滥用导致的。 例如 #define a 0.24 enum VARIABLE { ... a,//错误类型1 ... } int main() { double a;//错误类型2 } 被defi...
【100%通过率】华为od统一考试B卷【查找接口成功率最优时间段】Python 实现
服务之间交换的接口成功率作为服务调用关键质量特性,某个时间段内的接口失败率使用一个数组表示,数组中每个元素都是单位时间内失败率数值,数组中的数值为0~100的整数, 给定一个数值(minAverageLost)表示某个时间段内平均失败率容忍值,即平均失败率小于等于minAverageLost,找出数组中最长时间段,如果未找到则直接返回NULL。
expected identifier before numeric constant错误
error: expected identifier before numeric constant错误。 原因:定义的enum结构体与其它处的宏定义有冲突。 比如 a.h中: .... #define TRUE 1 ..... b.h中: ..... typedef enum { FALSE=0,
DMC-E 系列总线控制卡----雷赛板卡介绍(十七)
低的速度平稳地接近目标位置,降低运动部件对接触点的冲击。设置插补目标位置,插补方向,以确定插补动作。圆形区域限位,即运动仅在用户设定的圆形范围内进行,超出这个范围,运动会依据设定。首先,用户需要绑定两个轴进而确定该功能所处的坐标系。仅支持平面圆形限位,不支持空间圆形限位。径,可以确定该区域在坐标系中的位置。)运动开始前,用户应当将旋转轴调整到与插补曲线的起点位置相切的角度;可以配合椭圆插补或圆弧插补运动,实现跟随轴的旋转运动角度与曲线当前。外,其它运动形式若开始运动时在限位区域外,则禁止运动;
RK356x U-Boot研究所(命令篇)3.7 pci与nvme命令的用法
RK356x U-Boot研究所(命令篇)3.7 pci与nvme命令的用法
【error】expected identifier or ‘(’ before numeric constant
expected identifier or ‘(’ before numeric constant define has two definations
PX4从放弃到精通(三):使用qt编译PX4
1 下载px4源码 2在Firmware所在目录下执行 mkdir Firmware-build cd Firmware-build cmake …/Firmware -G “CodeBlocks - Unix Makefiles” -DCONFIG=nuttx_px4_fmu-v5_default 第三步最后的px4_fmu-v5_default根据自己的情况修改 执行完后如图 打开QT 点击打开工程 选择源码的CmakeLists.txt文件 选择imported Kit 打开项目那一栏,构建目
Linux系统下c语言编译错误:Error:expected identifier before numeric constant
今天在 Ubuntu16.04.1系统下编译程序的时候出现了编译错误:Error:expected identifier before numeric constant,这一下搞得我一头雾水,不知所措,菜鸟啊!!! 我在网上查了一下,有部分博客提到出现此错误的原因是某个宏定义的标识符同时也是某个枚举类型的枚举元素或枚举常量。举例说明如下: #define M_REGISTER 10 ...
怀旧版电脑GBC模拟器
再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
C++ - expected identifier before numeric constant
C++ - expected identifier before numeric constant 1. Build log -------------- Build: Debug in Bubble (compiler: GNU GCC Compiler)--------------- g++ -Wall -std=c++11 -fexceptions -rdynamic -DUSE_OPENCV -g -std=c++11 -I/usr/local/include/opencv4 -Irapidjso
Outlook Express 6 (OE6) for Win7/Win8/Win10
英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。
错误expected identifier before numeric constant
刷题时报错:expected identifier before numeric constant 原因:C++类体里,方法以外的区域不允许有初始化;类的数据成员在定义时不能初始化,否则就违背了面向对象抽象的特点 ...
复分析 阿尔福斯(Ahlfors) 第三版答案 英文
答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案
“expected unqualified-id before numeric constant ”
<br />linux gcc 编译出错 “expected unqualified-id before numeric constant ”<br />原因很可能是所有大写的名字常常被用于预处理宏, <br />不尊重命名空间范围,所以即使你在自己的命名空间上定义也会产生冲突。<br />可以采用条件编译来测试你所定义的常量是否已被定义。<br />#ifdef XXX<br /> code <br />#endif<br /> 因此这样的名称应 一般应避免的一切。<br />例:<br />原
C语言新手必踩的坑:宏定义和函数参数重名引发的[Error] expected ‘,‘ or ‘...‘ before numeric constant
本文深入解析C语言中宏定义与函数参数重名导致的`[Error] expected ',' or '...' before numeric constant`编译报错问题。通过典型案例分析、预处理机制解读和系统性解决方案,帮助开发者避免这一常见陷阱,提升代码质量。
C :expected identifier before numeric constant
今天在写类的时候遇到一个bug,代码如下 class Solution { public: vector<int> v(10);//报错 }; 显示报错expected identifier before numeric constant。其实就是毫无卵用的报错,问题出在类的方法外不可以调用构造函数初始化,可以用简单的初始化。 ...
错误:error: expected identifier before numeric constant
我一开始定义二维数组初始化的时候,我是这样写的: 编译器给我报错: 应该可以这样修改: 我这样修改之后编译就通过了。应该是需要我们在声明的时候需要在写一遍我们要赋值的类型,这样编译器才知道如何赋值。如上就是本篇的所有知识,如果大家喜欢看此文章并且有收获,可以支持下博主,给博主三连加关注,你的关注是对我最大的鼓励,也是我的创作动力~! 感谢大家对文章的支持呀!......
c++ error: expected ‘,‘ or ‘...‘ before numeric constant|
还是关于宏的问题,在条件编译的时候,不要将#if的常量表达式提到文件包含之前,放在其后便不会报错: #include <iostream> #define flag 1 //#if 的常量表达式 #define PI 3.14 using namespace std; int main() { double radius,sr,a,ss; #if flag //根据常量表达式的真假对不同的程序块进行编译 // {
766

被折叠的 条评论
为什么被折叠?



