怎么在C语言中对字符串与各数值类型进行转换
本篇文章给大家分享的是有关怎么在C语言中对字符串与各数值类型进行转换,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
首先放上一段展示各函数使用的代码,大家也可以copy到自己的机器上运行观察
#include<stdio.h> #include<stdlib.h> intmain(intargc,char*argv[]){ intnum=183; charstr[3]; //itoa函数将整型转换为字符串数值类型 itoa(num,str,10); printf("%s\n",str); //atoi函数将字符串转化为整形数值类型 intnums=atoi(str); printf("%d\n",nums); doubledou=12.432; charc[80]; charcc[80]; //sprintf函数可以实现其他数值类型到string类型的转换 sprintf(c,"%2.2f",dou); //还可以实现多个数值和字符串之间的任意连接,反正最后转换成字符串 sprintf(cc,"%2.3f%s",dou,"you"); printf("%s\n",c); printf("%s\n",cc); //将单精度或者双精度类型转化为字符串的fcvt和gcvt函数 //fcvt并不能显示小数点位置 doublefcvtnum=123.456; char*fcvtstr; intdecdot,sign; fcvtstr=fcvt(fcvtnum,2,&decdot,&sign); printf("%s\n",fcvtstr); //gcvt能够显示小数点,其第二个参数表示有效位数字 charfcvtstrg[20]; gcvt(fcvtnum,6,fcvtstrg); printf("%s\n",fcvtstrg); //strtod和atof能将字符串转化为双精度和单精度类型 printf("字符串转化为双精度浮点数%f\n单精度浮点数%f\n", strtod(fcvtstrg,NULL),atof(fcvtstrg)); return0; }
下面对上面代码用到的各函数分类整理与描述
字符串转化为其他类型
atoi(char *str) :只有一个待转化字符串参数,返回整型数
atof(char *str) :只有一个待转化字符串参数,返回单精度浮点数
strtod(char *str,char *end) :一个待转化的字符串参数,和一个转化结束的字符串参数,一般将其置为NULL,返回双精度浮点数
其他数值类型转化为字符串
itoa(int num,char *str,10) :整形转化为字符串,第一个参数为待转化的整型值num,第二参数为转化后的结果存储字符串,第三个为转化的进制,无返回值
fcvt(float num,int ndigits,*decdot,*sign) :浮点型转化为字符串,第一个参数为待转化的浮点数num,第二个参数为保留的小数点后面的位数,第三个存储结果中小数点的位置,第四个参数存储数值的正负,返回转化后字符串的指针,但是字符串中并没有小数点(如123.456转化为123456),所以一般就不要用啦
gcvt(float num,int n,char *str) :浮点型转化为字符串,第一个参数为待转化的浮点数num,第二个参数为保留的有效位数(不是小数点后的哦),第三个参数为存储结果的字符串指针,无返回值
sprintf(char *str, format,float num[,float num2…]) :其他各种类型都可以通过sprintf转化为字符串str,其中format表示转化前保留的格式,并且支持多个数据类型一起转化实现连接功能
以上就是怎么在C语言中对字符串与各数值类型进行转换,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注恰卡编程网行业资讯频道。
推荐阅读
-
windows安装touble c
近期有些网友想要了解windows?安装touble的相关情况,小编通过整理给您分享一下。为什么现在还需要TurboC?在当今V...
-
C/C++如何获取CAN信号
C/C++如何获取CAN信号本篇内容主要讲解“C/C++如何获取C...
-
C语言怎么通过二分查找实现猜数字游戏
C语言怎么通过二分查找实现猜数字游戏本文小编为大家详细介绍“C语言...
-
C语言数据结构中的线性表怎么使用
C语言数据结构中的线性表怎么使用这篇文章主要介绍“C语言数据结构中...
-
C语言的数据结构怎么理解
C语言的数据结构怎么理解这篇文章主要介绍了C语言的数据结构怎么理解...
-
C语言与C++中内存管理的方法
C语言与C++中内存管理的方法这篇文章主要介绍了C语言与C++中内...
-
C语言链式队列与循环队列怎么实现
C语言链式队列与循环队列怎么实现这篇文章主要介绍了C语言链式队列与...
-
C语言冒泡排序怎么实现
C语言冒泡排序怎么实现这篇文章主要介绍了C语言冒泡排序怎么实现的相...
-
C语言如何实现斐波那契数列
C语言如何实现斐波那契数列这篇文章主要介绍了C语言如何实现斐波那契...
-
C语言如何实现无符号数和有符号数间的运算
C语言如何实现无符号数和有符号数间的运算本篇内容主要讲解“C语言如...