类型转换,求救!

Betteronly 2005-07-17 03:07:32
long 型数据怎么转换成 字符型 ?

要将 long 型 赋值 到字符型数组中,
环境是IBM UNIX
...全文
152 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2005-07-17
  • 打赏
  • 举报
回复
ltoa
foochow 2005-07-17
  • 打赏
  • 举报
回复
如果在C++中用标准库sstream,这个更安全,C中用一楼说的
Betteronly 2005-07-17
  • 打赏
  • 举报
回复
OK,谢谢!
CoreWar 2005-07-17
  • 打赏
  • 举报
回复
ltoa
<stdlib.h>

char * ltoa ( long value, char * buffer, int radix );
Convert long integer value to string.
Converts a long integer value to a null-terminated string using the specified radix and stores the result in the given buffer.
If radix is 10 and value is negative the string is preceded by the minus sign (-). With any other radix, value is always considered unsigned.
buffer should be large enough to contain any possible value: (sizeof(long)*8+1) for radix=2.

Parameters.

value
Value to be represented as a string.
buffer
Buffer where to store the resulting string.
radix
Numeral radix in which value has to be represented, between 2 and 36.
Return Value.
A pointer to the string.

Portability.
Not defined in ANSI-C. Supported by some compilers.


Example.


/* ltoa example */
#include <stdio.h>
#include <stdlib.h>

int main ()
{
int i;
char buffer [sizeof(long)*8+1];
printf ("Enter a number: ");
scanf ("%d",&i);
ltoa (i,buffer,10);
printf ("decimal: %s\n",buffer);
ltoa (i,buffer,16);
printf ("hexadecimal: %s\n",buffer);
ltoa (i,buffer,2);
printf ("binary: %s\n",buffer);
return 0;
}

Output:
Enter a number: 16021977
decimal: 16021977
hexadecimal: f479d9
binary: 111101000111100111011001

See also.
atof, atol, ecvt, fcvt, gcvt, itoa, strtod


69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧