不使用堆栈实现八进制,十进制,十六进制的输出--sprintf()函数
(1)语法:
#include <stdio.h> int sprintf( char *buffer, const char *format, ... ); |
sprintf()函数和printf()类似, 只是把输出发送到buffer(缓冲区)中.返回值是写入的字符数量。
(2)常用转换进制的使用方式:
- sprintf(str,"%d",value) converts to decimal base.
- sprintf(str,"%x",value) converts to hexadecimal base.
- sprintf(str,"%o",value) converts to octal base
(3)范例:将100分别以10进制,16进制和8进制输出。
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
char s[10];
int value = 100;
sprintf(s,"%d",value);
printf("十进制:%s\n",s);
sprintf(s,"%x",value);
printf("十六进制:%s\n",s);
sprintf(s,"%o",value);
printf("八进制:%s\n",s);
return 0;
}
(4)运行结果: