我需要使用系统特定的功能,例如ftello()
(根据POSIX标准在stdio.h
中定义)。我还需要使用标准的C++特性,例如std::sprintf()
(根据ISO C++标准在cstdio
中定义)。包括<cstdio>和<stdio.h>的正确顺序?
据我所知,只包括<cstdio>
不保证定义非标准C++的东西,所以我想我必须包括。 我很久以前就读过(例如)使用gcc时,包含文件顺序可能存在问题。
那么,什么是既包括<cstdio>
和<stdio.h>
正确的顺序? 我正在寻找一个尽可能跨平台的解决方案(至少对于gcc,suncc,intel C++/linux和mingw)。
感谢您的回答。 我想我发现了一个类似的问题在这里: http://gcc.gnu.org/ml/libstdc++/2003-01/msg00210.html 我居然通过它绊倒了前一段时间,但我不记得细节。标题肯定是通过系统。 虽然这是一个系统/编译器的问题,我问的是,也许有人知道对付这种东西的尝试方法。 – Alex 2009-06-21 16:23:16