首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我怎样才能支持GCC的反斜杠?

我怎样才能支持GCC的反斜杠?
EN

Stack Overflow用户
提问于 2014-07-10 10:48:21
回答 3查看 2.6K关注 0票数 1

我给出了一个应该在GNU/Linux下编译的项目。正如您可能已经猜到的,项目中的所有头都使用反斜杠符号\

我知道,反斜杠是未定义行为,但我需要编译它。我很确定有一种方法可以让GCC处理这个问题,因为MinGW版本可以很好地处理反斜杠(我刚刚检查了这个)。

最有趣的是,该项目是一个用于GNU/Linux的应用程序(用于ARM架构),而且ARM GCC可能工作得很好。我是唯一一个在本地使用GNU/Linux并希望将桌面应用程序编译成有一个更容易的调试生活的人。

将反斜杠替换为斜杠,并迫使同事们重新学习使用其他字符不是办法:我只是一个初级学生,但一位已经在这里工作了4-7年的同事,他们就是听不到我的话。所以,我们开始..。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-07-10 11:36:37

没有什么是sed不能修复的:)

代码语言:javascript
运行
复制
sed -i '/#include/s/\\/\//g' *.c *.h
票数 2
EN

Stack Overflow用户

发布于 2014-07-10 10:59:02

用斜杠替换反斜杠。告诉你的同事看看这个堆叠溢出的帖子。

我写C代码已经超过24年了。反斜杠只是普通的错误的。如果它是重要的(事实上,它并不重要,因为Windows乐于使用正斜杠作为路径分隔符(如果与它们一起出现),则由C编译器来转换它们。

票数 5
EN

Stack Overflow用户

发布于 2014-07-10 11:33:12

GCC一点也不关心<>#include指令中的区别。它只是把所有的东西都传递给操作系统。如果您的操作系统找到了它,那么GCC将处理它。如果你在你的Linux目录中创建一个名为foo\bar.h的文件(你可以),在你的源代码中创建一个名为#include "foo\bar.h"的文件,它就会被找到。

你可以告诉你的同事推开他们的傲慢,修正他们的错误代码。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24674615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档