C语言数字转化为字符串

来源:互联网 发布:java怎么定义一个方法 编辑:程序博客网 时间:2024/06/09 13:13
#include <stdio.h>int len(char *str){int i = 0;while (str[i]){i++;}return i;}void reverse(char *str) //讲字符串首尾颠倒{int i_len = len(str);char tmp = 0;int i = 0;for (; i < (i_len / 2);i++){tmp = str[i];str[i] = str[i_len - 1 - i];str[i_len - 1 - i] = tmp;}}void strneg(char *str)//将字符串前面加上符号'-'{int i_len = len(str);int i = i_len - 1;for (; i >= 0;i--){str[i + 1] = str[i];}str[0] = '-';}const char *myitoa(int src){static char buf[128];int i = 0;for (; i < sizeof(buf);i++)//把buf初始化为0{buf[i] = 0;}int neg;//标志位 ,0代表负数,1代表整数if (src>=0) //src为正整数,讲neg标志位为1{neg = 1;}else{src = 0 - src;neg = 0;}i = 0;while (1){int n = src % 10;//求SRC与100的余数buf[i] = n + 0x30;//讲SRc与10的余数转化为char类型i++;src /= 10;if (src ==0){break;}}reverse(buf);//将字符串顺序首尾颠倒if (neg == 0)//src为负数,将转化后的字符串前面添加'-'{strneg(buf);}return buf;}int main(int arg, char *agr[]){int i = 76576578;printf("%s\n", myitoa(i));system("pause");}

0 0
原创粉丝点击