以下是对C语言中字符串和数字的相互转换实现代码进行了分析介绍,需要的朋友可以参考下
1.数字转换为字符串
sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。
sprintf 是个变参函数,定义如下:
int sprintf( char *buffer, const char *format [, argument] ... );
除了前两个参数类型固定外,后面可以接任意多个参数。
printf 和sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个位置,在后边的变参列表中提供相应的变量,最终函数就会用相应位置的变量来替代那个说明符,产生一个调用者想要 的字符串。
如把整数123 打印成一个字符串保存在s 中。
sprintf(s, "%d", 123); //产生"123"
2.字符串转换为数字
函数名: atol
功 能: 把字符串转换成长整型数
用 法: long atol(const char *nptr);
程序例:
#include
#include
int main(void)
{
long l;
char *str = "98765432";
l = atol(str);
printf("string = %s integer = %ld
", str, l);
return(0);
}
关键字:C语言 字符串 互转换
引用地址:
C语言中字符串和数字的相互转换实现代码
推荐阅读最新更新时间:2024-03-16 14:30
通过调试的AT93C46读写程序(C语言)
/********************************************************************* 通过调试的AT93C46读写程序(C语言) * 程序说明:本程序实现51系列单片机对AT93C46的读写,ORG端接地 * 版本: v1.1 *********************************************************************/ #include reg51.h #include intrins.h unsigned char uchar; #define READ_D 0xc0 //读指令 #define
[单片机]
汇编:统计输入字符串内的数字个数(最多三位数0—256)
;This is made by wq ;编程从键盘读入不超过256个字符的字符串; ;编程统计其中数字的个数,并将结果在屏幕上输出。 ;经进一步完善(能输出三位数啦) DATAS SEGMENT sum db 00h ;累加器 string db 256 dup(0dh);存放字符 tital db 'This program is made by wq.',0dh,0ah db 'It is used to calculater the amout of the number in the string ',0dh,0ah,'$' tit
[单片机]
单片机的外部结构和C语言编程基础说明
对于51系列单片机,现有四种编程语言支持,即汇编、pl/m,c和basic通常附在pc机上,是初学单片机编程的第一种语言。一个新变量名定 义之后可在程序中作变量使用,非常易学,根据解释的行可以找到 错误而不是当程序执行完才能显现出来。basic由于逐行解释自然很 慢,每一行必须在执行时转换成机器代码,需要花费许多时间不能 做到实时性。basic为简化使用变量,所有变量都用浮点值。basic 是用于要求编程简单而对编程效率和运行速度要求不高的场合。 pl/m是intel从8080微处理器开始为其系列产品开发的编程语言。现在已经没有看到人在使用了, 它很像pascal,是一种结构化语言,但它使用关键字去定义结构。 pl/m编译器好
[单片机]
PIC单片机C语言程序设计(8)
2.PICC编译器的安装。 《PIC 单片机C 语言程序(7)》一文介绍MPLAB IDE7.40 的安装时, 我们已将光盘中的PICC 编译器的压缩软件PICC8.05.rar( 见该文图12)粘贴到“我的电脑”的E 盘中。所以安装PICC 编译器时,只需按以下步骤操作。 ⑴ 在PC 机的显示器上,用鼠标双击“我的电脑”,在其窗口中打开磁盘E,找出压缩软件PICC8.05.rar 的图标,在其上单击鼠标右键,弹出其下拉菜单,用鼠标点击“解压到PICC8.05”命令,即可生成PICC 编译器被解压的图标PICC8.05,如图21 所示。 图21 ⑵ 点击PICC8.05图标, 在下栏菜单中, 点击“ 打
[单片机]
看门狗定时器的c语言编程
//***************FileName:LED.C***************// //**************ICCAVR V6.30编译**************// #include io8535v.h //头文件,AT90S8535单片机的寄存器定义 #define uchar unsigned char //数据类型说明 #define uint unsigned int //数据类型说明 void DelayMs(uint i) //Ms级延时函数,参数i:延时时间 {uint j; for(;i!=0;i--) {for(j=2000;j!=0;j--) {;}} }
[单片机]
PIC16F15323单片机 (ADC)--汇编+C语言
1 基本原理 1.1 寄存器介绍 1.2 寄存器汇总 1.3 ADC采集实现框图 2 实现代码 /*---------------------------------函数功能:------------------------------------- RA0(AN0)作为外部模拟电压的模拟输入口,并且用RC0口(LED)来判断电压采集是否完成, 如果AD采集完成,则AD对应的标志位ADIF=1,如果使能有效,则会产生一个中断,此时LED灯亮。 编程思路:参考手册的P131 To do an A/D Conversion, follow these steps -------------
[单片机]
TM1637四位数码管模块驱动(TM1637.h头文件)51单片机C语言
TM1637四位数码管模块是一个带时钟点的4位共阳数码管(0.36英寸)的显示模块,驱动芯片为TM1637,驱动方式为IIC,因此只需2根信号线即可使单片机控制4位8段数码管(数码管8级灰度可调)。 控制接口:共4个引脚(GND、VCC、DIO、CLK),GND为地,VCC为供电电源,DIO为数据输入输出脚,CLK为时钟信号脚。 TM1637.h单片机源程序如下: sbit CLK= P3^4; //定义模拟IIC总线的时钟线 sbit DIO = P3^5; //定义模拟IIC总线的数据线 code unsigned char tab = { 0x3F,/*0*/ 0x06,/*1*/
[单片机]
MSP430的C语言编写注意事项
============================================================================================================================== 微处理器一般用于特定环境和特定用途,出于成本、功耗和体积的考虑,一般都要求尽量节省使用资源,并且,由于微处理器硬件一般都不支持有符号数、浮点数的运算,且运算位有限,因此,分配变量时必须仔细。另外要说明的是,速度和存储器的消耗经常是2个不可兼顾的目标,在多数情况下,编程者必须根据实际情况作出权衡和取舍。 需要注意的事项如下: 1) 通常在满足运算需求的前提下,尽量选择为变量定义字节
[单片机]