<string> 与 <string.h> 的区别
2014-05-22 15:51
295 查看
C++头文件的现状:
旧的C++头文件名如<iostream.h>将会继续被支持,尽管它们不在官方标准中。这些头文件的内容不在名字空间std 中。
新的C++头文件如<iostream>包含的基本功能和对应的旧头文件相同,但头文件的内容在名字空间std 中。(在标准化的过程中,库中有些部分的细节被修改了,所以旧头文件和新头文件中的实体不一定完全对应。)
标准C 头文件如<stdio.h>继续被支持。头文件的内容不在std 中。
具有C 库功能的新C++头文件具有如<cstdio>这样的名字。它们提供的内容和相应的旧C 头文件相同,只是内容在std 中。
所有这些初看有点怪,但不难习惯它。最大的挑战是把字符串头文件理清楚:
<string.h>是旧的C 头文件,对应的是基于char*的字符串处理函数;
<cstring>是对应于旧C 头文件的std 版本;
<string>是包装了std 的C++头文件,对应的是新的string 类。
So:
①
②
旧的C++头文件名如<iostream.h>将会继续被支持,尽管它们不在官方标准中。这些头文件的内容不在名字空间std 中。
新的C++头文件如<iostream>包含的基本功能和对应的旧头文件相同,但头文件的内容在名字空间std 中。(在标准化的过程中,库中有些部分的细节被修改了,所以旧头文件和新头文件中的实体不一定完全对应。)
标准C 头文件如<stdio.h>继续被支持。头文件的内容不在std 中。
具有C 库功能的新C++头文件具有如<cstdio>这样的名字。它们提供的内容和相应的旧C 头文件相同,只是内容在std 中。
所有这些初看有点怪,但不难习惯它。最大的挑战是把字符串头文件理清楚:
<string.h>是旧的C 头文件,对应的是基于char*的字符串处理函数;
<cstring>是对应于旧C 头文件的std 版本;
<string>是包装了std 的C++头文件,对应的是新的string 类。
So:
①
#include<stdio.h> #include<string.h>
②
#include<iostream> using namespace std; #include<string>
相关文章推荐
- 整理:CString类的完美总结&&CString 成员函数用法大全&&string 与 CString 转化&&<string><string.h> 和<cstring>的区别
- <string>和<string.h>的区别?
- #include <string> <string.h> <cstring> 三者的区别
- <string> 与<string.h>、<cstring>的区别
- <string> 与<string.h>、<cstring>的区别
- <string>与<string.h>以及<cstring>的区别
- <string>和<string.h>两头文件区别
- <MFC>CString和<C++>标准库string的区别,及判断字符串是否为空
- <string.h> && <string> && <cstring>
- <context-param>与<init-param>的区别
- <script runat=server>,<%%>区别
- <iostream>he<iostream.h>的区别
- "<br />"和 "\r\n" 这两者有什么区别??
- <%= %>、<% %>、<%@ %>和<%# %>的区别
- <string.h>函数集合
- <connectionStrings>和<appSettings>这个的区别
- <jsp:include> 和 <iframe src=""...>的区别
- #include<iostream>与#include<iostream.h>及#inclue <string> 和 #include <string.h>的区别
- <context-param>与<init-param>的区别与作用
- <jsp:include>与include指令的区别