C语⾔数字转字符串的⼏种⽅法
1、ascii码操作:+0x30
由于char类型的保存形式是ascii码数值,所以可以加上数字0的ascii码48,即0x30,存储数字对应的字符ascii码。
char str1 ='c';// 随便初始化⼀下
str1 =0x30+5;
printf("str1: %c\n", str1);
printf("str1: %d\n", str1);
输出分别是5和53。
此处扩展⼀句,由于存储字符的本质是ascii码,所以使⽤uint8_t或其他类型的变量/数组来存储字符都是可⾏的。本⼈项⽬中就是使⽤u8来存储的,好处在于该数据结构⼀定会是8位的,也确定了其⽆符号的特性。
2、使⽤itoa(),但它不是标准库函数
这是cstdlib⾮标准库的函数,顾名思义,integer to ascii,数字转字符。
该函数⽤法为 char *itoa (int value, char *str, int base); value是原数字,str是要保存进的字符串指针,base是指定的数字进制。⼀个例⼦是:
itoa(123, string,10);
printf("string=%s\n", string);
输出则为123。
sprintf(str,"Pi 的值 = %f", M_PI);printf怎么输出字符
puts(str);
输出结果是:Pi 的值 = 3.141593
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论