- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我从 cstdio
的 c++ 引用中看到这一行:
库的每个元素都在 std 命名空间
中定义。但我尝试了代码:
std::printf("hello world");
printf("hello world");
C++ header 是否将名称同时放在 std 和全局命名空间中?
最佳答案
包括cstdio
导入 std
中的符号名称命名空间和可能在全局命名空间中。
其中stdio.h
在 std
中导入全局命名空间中的符号名称和 可能命名空间。
这同样适用于所有 c 样式的标题。
引用:
C++11 标准
附录 D(规范性)兼容性特性 [depr] 规定:
D.6 C 标准库头文件
1 For compatibility with the C standard library and the C Unicode TR, the C++ standard library provides the 25 C headers, as shown in Table 151.
其中包括:
<assert.h> <float.h> <math.h> <stddef.h> <tgmath.h>
<complex.h> <inttypes.h> <setjmp.h> <stdio.h> <time.h>
<ctype.h> <iso646.h> <signal.h> <stdint.h> <uchar.h>
<errno.h> <limits.h> <stdarg.h> <stdlib.h> <wchar.h>
<fenv.h> <locale.h> <stdbool.h> <string.h> <wctype.h>
继续,
2 Every C header, each of which has a name of the form
name.h
, behaves as if each name placed in the standard library namespace by the correspondingcname header
is placed within the global namespace scope. It is unspecified whether these names are first declared or defined within namespace scope (3.3.6) of the namespace std and are then injected into the global namespace scope by explicit using-declarations (7.3.3).3 [ Example: The header
<cstdlib>
assuredly provides its declarations and definitions within the namespace std. It may also provide these names within the global namespace. The header<stdlib.h>
assuredly provides the same declarations and definitions within the global namespace, much as in the C Standard. It may also provide these names within the namespace std. —end example ]
关于c++ - cstdio stdio.h 命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10460250/
我正在尝试创建一个迭代器来遍历我的文件。我的文件是二进制的,里面有 int 值,所以在我看来,它应该像那样工作。但是我收到错误提示“无效使用数据成员‘IntFile::file’”所以我在代码中标记了
我有一个要写入数据的文件,使用 cstdio 中的函数。我想确保文件已成功写入文件而没有任何中断,因此我知道稍后读取文件时会从文件中得到什么。我打算这样做的方法是,首先将 8 个字节的清零数据写入文件
下面的 C 代码有什么问题? (更新) int nfds = 0; char c[2] = " "; char ans[2] = " "; printf("Test p or s [p,s]: p?
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 关闭 9 年前。 Improve
当我添加 #include 时,我在 cstdio 中遇到了很多错误到 C 程序。 c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\in
我有一些数据使用 cin/in 太慢了。每行三个整数: 1 2 2 3 4 1 5 6 122 6 4 7 如何读入循环中的每一行,以获得结果(对于第一次迭代): x==1; y==2; z==2;
我正在上我的第一门 c++ 课(我在第 6 周。) 我使用了 getchar(),根据我能找到的所有引用资料,它位于 cstdio(或 stdio 或 stdio.h)中。只是为了看看会发生什么,我注
我正在寻找一个类似于 iostreams 的库,因为它执行转换,并允许写入内存缓冲区、文件和控制台。但是,我想要一些类型安全的东西,就像 iostream 一样。有没有真正的图书馆可以做到这一点? 能
我刚刚了解到ios_base::sync_with_stdio函数的存在,它基本上可以让你关闭(或者如果你已经关闭它就打开)iostream之间的同步在 C++ 中使用的 code> 流和作为标准 C
我从 cstdio 的 c++ 引用中看到这一行: 库的每个元素都在 std 命名空间中定义。但我尝试了代码: std::printf("hello world"); printf("hello wo
这个问题已经有答案了: Correct format specifier for double in printf (5 个回答) 已关闭 6 年前。 使用 cstdio header 的 doubl
下面的 c++ 程序无法读取文件。我知道使用 cstdio 不是很好的做法,但我已经习惯了,它应该可以正常工作。 $ ls -l l.uyvy -rw-r--r-- 1 atilla atilla 6
我正在尝试使用 C++ 习惯用法将字符写入 cout,但我在任何 C++ 标准库中都找不到字符格式化程序。 最佳答案 字符自动格式化为 %c。要将整数打印为 char(如果你真的想要),你可以转换它:
_gnu_cxx::snprintf has not been declared 当我在我的 cpp 中包含字符串时。此错误位于此行: using ::__gnu_cxx::snprintf; cst
是吗C++ 中的 header 包含与 相同的功能但输入 std命名空间? 我在使用 mingw-w64 编译的程序中遇到了奇怪的效率问题,它比在 linux 上慢十倍以上。经过一些测试,我发现问题
假设我有这样的代码片段: #include using namespace std; int main(int argc, char *argv[]) { printf("%d",5); } 它在我
我正在尝试编写一个简单的程序,以 1024 字节为单位从文件(输入)读取数据,然后将数据写入另一个文件(输出)。该程序到目前为止工作,但我遇到的问题是,如果它到达文件末尾并且最后一次读取不是 1024
以下代码会引发许多错误: namespace ns1 { #include ... } /usr/include/c++/4.9/cstdlib:118: error: '::d
所以这个问题只是出于好奇。我有一些小程序: #include void print(){ printf("abc"); } // don't care about main, I'm not gon
我正在编写使用 C++ 库中定义的一些类的 Cocoa 代码。我给文件名加上扩展名 .mm,通常一切正常。 但并非总是如此。有时 Xcode 4 让我失望:“词法或预处理器问题:‘cstdio’未找到
我是一名优秀的程序员,十分优秀!