MSVC编译遇到C2059、C2143、C2059、C2365、C2059等错误的解决方案

news2025/4/5 1:53:35

在这里插入图片描述
MSVC编译时,遇到如下错误:

c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2059: 语法错误:“常数” [D:\jenkins_home\workspace\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2143: 语法错误: 缺少“;”(在“)”的前面) [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2059: 语法错误:“)” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1897): error C2365: “abort”: 重定义;以前的定义是“函数” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt\stdlib.h(56): note: 参见“abort”的声明
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1945): error C2059: 语法错误:“}” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
aaa.c
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2059: 语法错误:“常数” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2143: 语法错误: 缺少“;”(在“)”的前面) [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2059: 语法错误:“)” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1897): error C2365: “abort”: 重定义;以前的定义是“函数” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt\stdlib.h(56): note: 参见“abort”的声明
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1945): error C2059: 语法错误:“}” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
bbb.c
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2059: 语法错误:“常数” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2143: 语法错误: 缺少“;”(在“)”的前面) [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1842): error C2059: 语法错误:“)” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1897): error C2365: “abort”: 重定义;以前的定义是“函数” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt\stdlib.h(56): note: 参见“abort”的声明
c:\program files (x86)\windows kits\10\include\10.0.18362.0\um\msxml.h(1945): error C2059: 语法错误:“}” [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
D:\jenkins_home\workspace\xxx\xxx\xxx\xxx\xxx\model\xxx.c(291): warning C4090: “函数”: 不同的“const”限定符 [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
D:\jenkins_home\workspace\xxx\xxx\xxx\xxx\xxx\model\xxx.c(298): warning C4090: “函数”: 不同的“const”限定符 [D:\jenkins_home\workspace\xxx\xxx\xxx.vcxproj]
ccc.c

根据提示找到.c文件,发现代码也没有问题,也不是报的语法错误。

于是继续根据提示找到msxml.h文件的1842行,发现函数参数列表里有个pi,恰巧项目代码内有个宏定义是#define pi 3.14159
在这里插入图片描述

找到原因,是因宏定义与某些变量名冲突所致。

修改宏常量名称,再次编译,问题解决。


总结: 该类问题,一般都是由于重复定义或定义冲突等原因造成,尤其是在定义宏时尽可能避免简单字眼,防止与某些第三方库或代码发生冲突。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2327315.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI重塑云基础设施,亚马逊云科技打造AI定制版IaaS“样板房”

AI正在彻底重塑云基础设施。 IDC最新《2025年IDC MarketScape:全球公有云基础设施即服务(IaaS)报告》显示,AI正在通过多种方式重塑云基础设施,公有云IaaS有望继续保持快速增长,预计2025年全球IaaS的整体规…

Linux系统之systemctl管理服务及编译安装配置文件安装实现systemctl管理服务

目录 一.systemctl 管理服务 1.systemctl管理 2.设置服务卡机自启动或开机不启动 二.编译安装配置文件编写使得可以使用systemctl管理 1、编写配置文件原因 2、添加配置文件实现systemctl管理服务 一.systemctl 管理服务 1.systemctl管理 基本格式: systemc…

【NLP 52、多模态相关知识】

生活应该是美好而温柔的,你也是 —— 25.4.1 一、模态 modalities 常见: 文本、图像、音频、视频、表格数据等 罕见: 3D模型、图数据、气味、神经信号等 二、多模态 1、Input and output are of different modalities (eg: tex…

Element Plus 常用组件

2025/4/1 向全栈工程师迈进!!! 常见Element Plus组件的使用,其文章中“本次我使用到的按钮如下”是我自己做项目时候用到的,记录以加强记忆。阅读时可以跳过。 一、Button按钮 1.1基础按钮 在element plus中提供的按…

2025年优化算法:真菌生长优化算法(Fungal Growth Optimizer,FGO)

真菌生长优化算法(Fungal Growth Optimizer,FGO) 是发表在中科院一区期刊“ARTIFICIAL INTELLIGENCE REVIEW”(IF:6.7)的2025年3月智能优化算法 01.引言 Fungal Growth Optimizer (FGO) 是一种基于真菌生长行为的元启发式优化算法…

阿里通义千问发布全模态开源大模型Qwen2.5-Omni-7B

Qwen2.5-Omni 是一个端到端的多模态模型,旨在感知多种模态,包括文本、图像、音频和视频,同时以流式方式生成文本和自然语音响应。汇聚各领域最先进的机器学习模型,提供模型探索体验、推理、训练、部署和应用的一站式服务。https:/…

论文阅读:基于增强通用深度图像水印的混合篡改定位技术 OmniGuard

一、论文信息 论文名称:OmniGuard: Hybrid Manipulation Localization via Augmented Versatile Deep Image Watermarking作者团队:北京大学发表会议:CVPR2025论文链接:https://arxiv.org/pdf/2412.01615二、动机与贡献 动机: 随着生成式 AI 的快速发展,其在图像编辑领…

深挖 DeepSeek 隐藏玩法·智能炼金术2.0版本

前引:屏幕前的你还在AI智能搜索框这样搜索吗?“这道题怎么写”“苹果为什么红”“怎么不被发现翘课” ,。看到此篇文章的小伙伴们!请准备好你的思维魔杖,开启【霍格沃茨模式】,看我如何更新秘密的【知识炼金…

【新手初学】SQL注入getshell

一、引入 木马介绍: 木马其实就是一段程序,这个程序运行到目标主机上时,主要可以对目标进行远程控制、盗取信息等功能,一般不会破坏目标主机,当然,这也看黑客是否想要搞破坏。 木马类型: 按照功…

DAY 34 leetcode 349--哈希表.两个数组的交集

题号349 我尝试硬解失败 /*class Solution {public int[] intersection(int[] nums1, int[] nums2) {int n1nums1.length;int n2nums2.length;int sizeMath.min(n1,n2);int []arrnew int[size];int count0;for(int i0;i<n1;i){outerloop:for(int j0;j<n2;j){if(nums1[i…

14-SpringBoot3入门-MyBatis-Plus之CRUD

1、整合 13-SpringBoot3入门-整合MyBatis-Plus-CSDN博客 2、表 3、crud package com.sgu;import com.sgu.mapper.UserMapper; import com.sgu.pojo.User; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.spri…

三轴云台之相机技术篇

一、结构设计 三轴云台通常由空间上三个互相垂直的框架构成&#xff0c;包括内框&#xff08;俯仰框&#xff09;、中框&#xff08;方位框&#xff09;和外框&#xff08;横滚框&#xff09;。这些框架分别负责控制相机的俯仰运动、方位运动和横滚运动&#xff0c;从而实现对目…

Bugku-再也没有纯白的灵魂

下载文件发现是兽音先用https://roar.iiilab.com/加密flag 得到“~呜嗷嗷嗷嗷呜啊嗷啊呜呜嗷呜呜~嗷嗷~啊嗷啊呜嗷嗷~嗷~嗷~呜呜嗷呜啊啊”&#xff0c;与密文对比对比发现字段少个啊&#xff0c;并且B对应嗷&#xff0c;U对应呜&#xff0c;G对应啊&#xff0c;K对应~补充啊后…

多模态大语言模型arxiv论文略读(一)

Does Transliteration Help Multilingual Language Modeling? ➡️ 论文标题&#xff1a;Does Transliteration Help Multilingual Language Modeling? ➡️ 论文作者&#xff1a;Ibraheem Muhammad Moosa, Mahmud Elahi Akhter, Ashfia Binte Habib ➡️ 研究机构: Pennsyl…

单元测试原则之——不要模拟不属于你的类型

在单元测试中,不要模拟不属于你的类型(Don’t mock types you don’t own)是一个重要的原则。这是因为外部库或框架的类型(如第三方依赖)可能会在未来的版本中发生变化,而你的模拟可能无法反映这些变化,从而导致测试失效。 以下是一个基于Java Mockito 的示例,展示如何…

算法与数据结构面试题

算法与数据结构面试题 加油&#xff01; 考查数据结构本身 什么是数据结构 简单地说&#xff0c;数据结构是以某种特定的布局方式存储数据的容器。这种“布局方式”决定了数据结构对于某些操作是高效的&#xff0c;而对于其他操作则是低效的。首先我们需要理解各种数据结构&a…

边缘检测技术现状初探2:多尺度与形态学方法

一、多尺度边缘检测方法 多尺度边缘检测通过在不同分辨率/平滑度下分析图像&#xff0c;实现&#xff1a; 粗尺度&#xff08;大σ值&#xff09;&#xff1a;抑制噪声&#xff0c;提取主体轮廓细尺度&#xff08;小σ值&#xff09;&#xff1a;保留细节&#xff0c;检测微观…

【AI News | 20250402】每日AI进展

AI Repos 1、Dolphin 由数据海洋AI与清华大学联合研发的Dolphin多任务语音识别模型正式亮相。该模型覆盖东亚、南亚、东南亚及中东地区40余种语言&#xff0c;并支持22种汉语方言&#xff0c;训练数据量超21万小时&#xff08;含自有及开源数据&#xff09;&#xff0c;具备语…

操作系统高频(七)虚拟地址与页表

操作系统高频&#xff08;六&#xff09;虚拟地址与页表 1.什么是文件系统&#xff1f;它的作用是什么&#xff1f;⭐ 存储管理&#xff1a;文件系统负责管理计算机的存储设备&#xff0c;如硬盘、固态硬盘等。它将文件存储在这些设备上&#xff0c;并负责分配和回收存储空间…

openEuler24.03 LTS下安装Flume

目录 前提条件 下载Flume 解压 设置环境变量 修改日志文件 测试Flume 在node2安装Flume 前提条件 Linux安装好jdk Flume一般需要配合Hadoop使用&#xff0c;安装好Hadoop完全分布式集群&#xff0c;可参考&#xff1a;openEuler24.03 LTS下安装Hadoop3完全分布式 下载F…