C++中的类型转化
来源:互联网 发布:淘宝购物拒签会怎样 编辑:程序博客网 时间:2024/05/29 17:54
C++中的类型转换种类繁多,很容易出错。本文主要总结,在何种情形该使用什么类型转化。
1. char* >> int
- atoi
char s[100];
int i=atoi(s); - sscanf
int sscanf(const char *str, const char *format, …);
sscanf(s,”%d”,&i);
*stringstream
as follows
2. int >> char * : sprintf
int n=10000;
chars[10];
sprintf(s,”%d”,n);// s中的内容为“10000”
这样就利用sprintf将int转化成字符串或者char,但是这种转化方式也存在隐患,我们将在下文提到。
3. 万能转化:stringstream
- This class is inluded in
先来看一下sprintf可能存在的隐患:
int n=10000;
char s[10];
sprintf(s,”%f”,n);// 看!错误的格式化符
那么在C++中,如何更好地将int转化成string呢?
string result=”10000”;
int n=0;
stream<
4. Why not itoa?
C语言中,字符串的处理始终是一个硬伤。标准库之所以提供atoi,是因为返回的是一个标准类型;而atoi,返回的是一个字符串。那么如何返回字符串呢?
1)全局固定内存:线程安全无法保证。
2)每次调用进行malloc空间:容易内存泄露。
3)传入指针:实质和sprintf一样
int sprintf(char * restrict str, const char * restrict format, …);
0 0
- vc中的类型转化
- C++中的类型转化
- JS 中的类型转化
- c#.net 类型转化
- c#.net 类型转化
- c 语言类型转化
- C语言 类型转化
- C语言的类型转化
- c/c++string 转化其他类型
- C语言中的数据类型转化
- C++中的字符串类型及相互转化
- 分析 C++中的强制类型转化
- (C语言)signed和unsigned类型转化
- C语言的强制类型转化总结
- android典型代码系列(十八)------把java中的jstring的类型转化成一个c语言中的char字符串
- 如何将Jason中的NSString类型转化为NSArray类型
- java后台Date类型与js中的Date类型转化
- C语言学习笔记(4)类型转化,复合类型
- 各种编程语言的深度学习库整理
- struct,class,union
- Shell简介:什么是Shell,Shell命令的两种执行方式
- iso学习网址
- 新浪微博开发-(6)自定义搜索框
- C++中的类型转化
- MongoDB学习日记 - java代码(三):数据库与集合操作
- Arraylist的sort方法使用
- Z-Stack1.4.3-1.2.1中SampleApp中重要函数解析
- 操作系统常见面试题总结
- nodejs配置Log服务
- android LayoutInflater.inflate()的参数及其用法
- Java TreeMap 源码解析
- jsp中request.getParameter和request.getAttribute之间的区别