C++ VS2008中为_文件_打印的完整路径名

C++ VS2008中为_文件_打印的完整路径名,c++,visual-studio-2008,path,filenames,C++,Visual Studio 2008,Path,Filenames,我们的代码使用\uuuu文件\uuuu打印日志文件中的代码位置。 我们的目的是让\uuuuu FILE\uuuu的所有实例只打印文件名,而不打印路径 但是,我们注意到,虽然source(.cpp文件)只正确地打印文件名,但是头(.h文件)打印完整路径。这暴露了我们的构建服务器在客户安装上的路径,这充其量是令人困惑的 我研究了编译选项以及它与编译选项的关系。短版本-/ZI表示/FC。我们目前使用的是/Zi,但我们既没有使用/Zi也没有使用/FC,所以应该可以 我们使用的是项目范围的预编译头(PCH

我们的代码使用
\uuuu文件\uuuu
打印日志文件中的代码位置。
我们的目的是让
\uuuuu FILE\uuuu
的所有实例只打印文件名,而不打印路径

但是,我们注意到,虽然source(
.cpp
文件)只正确地打印文件名,但是头(
.h
文件)打印完整路径。这暴露了我们的构建服务器在客户安装上的路径,这充其量是令人困惑的

我研究了编译选项以及它与编译选项的关系。短版本-
/ZI
表示
/FC
。我们目前使用的是
/Zi
,但我们既没有使用
/Zi
也没有使用
/FC
,所以应该可以

我们使用的是项目范围的预编译头(PCH),但是PCH中包含的头都没有使用
\uuuu文件\uuuu
,因此这似乎无关紧要

这是怎么回事?
是否可能有我触发的潜在编译选项?

有人知道不涉及调用运行时字符串操作函数的变通方法吗?

在本文中,这被断言为“按设计”。考虑一个后处理步骤,按照你想要的方式来设置路径。

谢谢你发现了——我在昨天搜索的时候错过了它。啊。如果在MSDN上的任何地方都有记录,那就太好了。我想我会把这个链接放到/FC文档中,我们的解决方案是实现一个字符串修剪函数,返回一个指向完全限定路径中文件名子字符串开头的指针。