c语言标准库中字符转换函数和数字转换函数
字符转换为数字:
#include<stdlib.h>
atoi();将字符转换为整型 例:char ch1;int i=atoi(ch1);
atol();将字符转化为长整型 例:char ch2;long l=atol(ch2);
atof();将字符转化为浮点型 例:char ch3;float f=atof(ch3);
strtod(); 将字符串转化为双精度类型 例:string str1;double d=strtod(str1);
strtol(); 将字符串转化为长整型 例:string str2; long int li=strtol(str2);
strtoul(); 将字符串转化为无符长整型 例:sting str3; unsinged long int uli=str(str3);
数字转换为字符:
itoa(); 将整型转化为字符
例:int i; char ch1; itoa(i,ch1,radix);
radix为基数:想要把ch1转化为十进制则为10,八进制则为8,十六进制则为16
ltoa(); 将长整型转化为字符 例: long int i li; char ch2; ltoa(li,ch2,radix);
ultoa(); 将无符长整型转化为字符 例:unsiged long int uli; char ch3; ultoa(uli,ch3,radix);
字符与字符的转化:
#include<ctype.h>
tolower(); 将一个大写字母转化为小写字母
例:char upper=C; char lower=tolower(upper);//得lower=c
toupper(); 将一一个小写字母转化为大写字母
例:char lower=c; char upper=toupper(lower);//得upper=C
相关推荐
-
使用设计模式中的单例模式来实现C++的boost库
线程安全的单例模式 一.懒汉模式:即第一次调用该类实例的时候才产生一个新的该类实例,并在以后仅返回此实例. 需要用锁,来保证其线程安全性:原因:多个线程可能进入判断是否已经存在实例的if语句,从而non thread safety. 使用double-check来保证thread safety.但是如果处理大量数据时,该锁才成为严重的性能瓶颈. 1.静态成员实例的懒汉模式: class Singleton { private: static Singleton* m_instance; Sing
-
C语言使用stdlib.h库函数的二分查找和快速排序的实现代码
快速排序: 复制代码 代码如下: #include <stdlib.h>#include <stdio.h>#include <string.h> #define LENGTH(x) sizeof(x)/sizeof(x[0]) /**输出数组元素*\param arr:指向数组的指针*\param len:数组元素的个数*/void print(char (*arr)[10],int len){ int i; for (i=0;i<len;i++)
-
C++之BOOST字符串查找示例
本文实例讲述了C++中BOOST字符串查找的方法,分享给大家供大家参考.具体方法如下: BOOST 字符串查找示例 复制代码 代码如下: #include <string> #include <iostream> #include <algorithm> #include <functional> #include <boost/algorithm/string/case_conv.hpp> #include <boost/al
-
浅析Boost智能指针:scoped_ptr shared_ptr weak_ptr
一. scoped_ptrboost::scoped_ptr和std::auto_ptr非常类似,是一个简单的智能指针,它能够保证在离开作用域后对象被自动释放.下列代码演示了该指针的基本应用: 复制代码 代码如下: #include <string>#include <iostream>#include <boost/scoped_ptr.hpp> class implementation{public: ~implementation() { std::cout
-
浅析C语言头文件和库的一些问题
使用gcc的编译器 头文件没有包含stdlib.h,使用atoi函数(atoi函数在stdlib.h中才有声明),编译却没有出错 如果编译的时候加上-Wall选项,会有个警告,请问这是为什么?这是因为C语言一个非常傻的规定:一个函数如果没有声明函数原型,其返回值类型就是int(所谓的implicit declaration).由于atoi恰好真返回int,所以你即使不包含它的头文件也不报错.至于这个警告,是为了避免你由于忘记声明函数原型而出错. 编译器对于没有定义过的函数原型直接当作它返回int
-
Boostrap基础教程之JavaScript插件篇
Boostrap提供了12种JavaScript插件,包括: 动画过渡 Transition 模态 Modal 下拉菜单 Dropdown 滚动侦测 Scrollspy 选项卡 Tab 提示框 Tooltip 弹出框 Popover 警告框 Alert 按钮 Button 折叠 Collapse 旋转轮播 Carousel 自动定位浮标 Affix 模态弹窗 <div class="modal show"> <div class="modal-dialog&
-
C++中Boost库裁剪与其应用详解
前言 Boost 库涵盖的范围极广,有字符串和文本处理相关子库比如 format 库和 regexp 库,有容器相关子库比如 variant 库(和 Qt 的 QVariant 有得一拼),有迭代器子库比如 tokenizer 库(可以把字符进行 tokenize),还有算法.函数对象和高阶编程相关子库如functional 库.lambda 库和 signal 库,还有泛型编程.模板编程子库如 call traits.mpl,还有并发编程相关的 thread 库,等等等等. Boost 是如此
-
浅析C++中boost.variant的几种访问方法
Boost.Variant Variant库包含一个不同于union的泛型类,用于在存储和操作来自于不同类型的对象.这个库的一个特点是支持类型安全的访问,减少了不同数据类型的类型转换代码的共同问题. Variant 库如何改进你的程序? •对用户指定的多种类型的进行类型安全的存储和取回 •在标准库容器中存储不同类型的方法 •变量访问的编译期检查 •高效的.基于栈的变量存储 Variant 库关注的是对一组限定类型的类型安全存储及取回,即非无类的联合.Boost.Variant 库与 Boost.
-
C++之boost::array的用法
本文实例讲述了C++之boost::array的用法,分享给大家供大家参考.具体如下: 复制代码 代码如下: #include <string> #include <iostream> #include <boost/array.hpp> #include <algorithm> using namespace std; int main() { boost::array<int, 5> array_temp = {{12,
-
C++之Boost::array用法简介
本文实例讲述了c++里支持静态数组的容器:boost.array.分享给大家供大家参考.具体分析如下: 很多C++程序员都认为boost.array很有可能出现在下一代标准库里.对于boost.array的用法有一个基本的了解是很有必要的. 1. 为什么我们需要固定大小的数组的容器 首先,固定大小的数组还是很常见的,虽然stl提供了vector,但是vector作为动态可增长的数组,比静态数组多了一点开销,这在一些人看来是无法忍受的.c++里也需要提供固定大小容量的数组容器,当然,性能可以和普通
随机推荐
- Angular.js之作用域scope'@','=','&'实例详解
- Oracle监听器服务不能启动的解决方法
- Hibernate核心思想与接口简介
- 基于hashlib模块--加密(详解)
- JavaScript实现俄罗斯方块游戏过程分析及源码分享
- ASP.NET MVC5网站开发之业务逻辑层的架构和基本功能 (四)
- php生成图片缩略图的方法
- php实现的简单数据库操作Model类
- 用ASP+DLL实现WEB方式修改服务器时间
- 这年头小偷真是太强了(经典)
- IIS7 ASP+Access使用环境配置
- 关于jquery input textare 事件绑定及用法学习
- jquery 中toggle的2种用法详解(推荐)
- asp.net 获取数据库连接字符串
- C#实现win10 uwp 右击浮出窗在点击位置
- js动态添加表格逐行添加、删除、遍历取值的实例代码
- spring boot整合mybatis利用Mysql实现主键UUID的方法
- Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
- 详解Django model update的各种用法介绍
- Pandas之DataFrame对象的列和索引之间的转化