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语言头文件和库的一些问题
使用gcc的编译器 头文件没有包含stdlib.h,使用atoi函数(atoi函数在stdlib.h中才有声明),编译却没有出错 如果编译的时候加上-Wall选项,会有个警告,请问这是为什么?这是因为C语言一个非常傻的规定:一个函数如果没有声明函数原型,其返回值类型就是int(所谓的implicit declaration).由于atoi恰好真返回int,所以你即使不包含它的头文件也不报错.至于这个警告,是为了避免你由于忘记声明函数原型而出错. 编译器对于没有定义过的函数原型直接当作它返回int
-
使用设计模式中的单例模式来实现C++的boost库
线程安全的单例模式 一.懒汉模式:即第一次调用该类实例的时候才产生一个新的该类实例,并在以后仅返回此实例. 需要用锁,来保证其线程安全性:原因:多个线程可能进入判断是否已经存在实例的if语句,从而non thread safety. 使用double-check来保证thread safety.但是如果处理大量数据时,该锁才成为严重的性能瓶颈. 1.静态成员实例的懒汉模式: class Singleton { private: static Singleton* m_instance; Sing
-
C++之BOOST字符串查找示例
本文实例讲述了C++中BOOST字符串查找的方法,分享给大家供大家参考.具体方法如下: BOOST 字符串查找示例 复制代码 代码如下: #include <string> #include <iostream> #include <algorithm> #include <functional> #include <boost/algorithm/string/case_conv.hpp> #include <boost/al
-
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库裁剪与其应用详解
前言 Boost 库涵盖的范围极广,有字符串和文本处理相关子库比如 format 库和 regexp 库,有容器相关子库比如 variant 库(和 Qt 的 QVariant 有得一拼),有迭代器子库比如 tokenizer 库(可以把字符进行 tokenize),还有算法.函数对象和高阶编程相关子库如functional 库.lambda 库和 signal 库,还有泛型编程.模板编程子库如 call traits.mpl,还有并发编程相关的 thread 库,等等等等. Boost 是如此
-
C++之Boost::array用法简介
本文实例讲述了c++里支持静态数组的容器:boost.array.分享给大家供大家参考.具体分析如下: 很多C++程序员都认为boost.array很有可能出现在下一代标准库里.对于boost.array的用法有一个基本的了解是很有必要的. 1. 为什么我们需要固定大小的数组的容器 首先,固定大小的数组还是很常见的,虽然stl提供了vector,但是vector作为动态可增长的数组,比静态数组多了一点开销,这在一些人看来是无法忍受的.c++里也需要提供固定大小容量的数组容器,当然,性能可以和普通
-
浅析C++中boost.variant的几种访问方法
Boost.Variant Variant库包含一个不同于union的泛型类,用于在存储和操作来自于不同类型的对象.这个库的一个特点是支持类型安全的访问,减少了不同数据类型的类型转换代码的共同问题. Variant 库如何改进你的程序? •对用户指定的多种类型的进行类型安全的存储和取回 •在标准库容器中存储不同类型的方法 •变量访问的编译期检查 •高效的.基于栈的变量存储 Variant 库关注的是对一组限定类型的类型安全存储及取回,即非无类的联合.Boost.Variant 库与 Boost.
-
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++)
-
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&
-
浅析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
随机推荐
- SQL Server中的XML数据进行insert、update、delete
- 微软内部泄露的 XP的KEY和无限次激活码
- 浅谈Java 对于继承的初级理解
- Python yield 使用方法浅析
- 打造基于jQuery的高性能TreeView(asp.net)
- asp.net采集页面上所有图像图片资源的具体方法
- php获取远程图片的两种 CURL方式和sockets方式获取远程图片
- C#使用windows服务开启应用程序的方法
- Javascript中的数学函数
- Android学习笔记之ListView复用机制详解
- vue如何集成raphael.js中国地图的方法示例
- js动画效果制件让图片组成动画代码分享
- PHP中常用的几个 mysql操作
- 基于jquery实现等比缩放图片
- jQuery插件zTree实现获取当前选中节点在同级节点中序号的方法
- c# winform时钟的实现代码
- C语言实现选择排序、冒泡排序和快速排序的代码示例
- XRecyclerView实现下拉刷新、滚动到底部加载更多等功能
- WordPress用户登录框密码的隐藏与部分显示技巧
- vue中路由参数传递可能会遇到的坑