Linux系统下关于函数itoa()
答案:3 悬赏:40
解决时间 2021-01-19 20:49
- 提问者网友:斑駁影
- 2021-01-18 20:33
Linux系统下关于函数itoa()
最佳答案
- 二级知识专家网友:深街酒徒
- 2021-01-18 21:41
#include
int atoi(const char *nptr);
long atol(const char *nptr);
long long atoll(const char *nptr);
long long atoq(const char *nptr);
linux下面没对应的好像,我man 没有查到.
给你直接找到一个实现,你放到自己代码里面就可以了
void itoa ( unsigned long val, char *buf, unsigned radix )
{
char *p;
char *firstdig;
char temp;
unsigned digval;
p = buf;
firstdig = p;
do {
digval = (unsigned) (val % radix);
val /= radix;
if (digval > 9)
*p++ = (char ) (digval - 10 + 'a ');
else
*p++ = (char ) (digval + '0 ');
} while (val > 0);
*p-- = '\0 ';
do {
temp = *p;
*p = *firstdig;
*firstdig = temp;
--p;
++firstdig;
} while (firstdig < p);
}
int atoi(const char *nptr);
long atol(const char *nptr);
long long atoll(const char *nptr);
long long atoq(const char *nptr);
linux下面没对应的好像,我man 没有查到.
给你直接找到一个实现,你放到自己代码里面就可以了
void itoa ( unsigned long val, char *buf, unsigned radix )
{
char *p;
char *firstdig;
char temp;
unsigned digval;
p = buf;
firstdig = p;
do {
digval = (unsigned) (val % radix);
val /= radix;
if (digval > 9)
*p++ = (char ) (digval - 10 + 'a ');
else
*p++ = (char ) (digval + '0 ');
} while (val > 0);
*p-- = '\0 ';
do {
temp = *p;
*p = *firstdig;
*firstdig = temp;
--p;
++firstdig;
} while (firstdig < p);
}
全部回答
- 1楼网友:十年萤火照君眠
- 2021-01-19 00:26
你那里没有itoa这个函数,用sprintf吧。
itoa不是c标准库的,有的编译环境有,有的则没有。
请查看你那儿的环境,是否需要包含什么头文件。
itoa不是c标准库的,有的编译环境有,有的则没有。
请查看你那儿的环境,是否需要包含什么头文件。
- 2楼网友:深街酒徒
- 2021-01-18 22:53
附加 gcc 参数 -lxxxx 方式调用提供 itoa 函数接口的库。
不过你需要确定这个xxxx 应该是哪个才行。
你现在提示是 undefined reference 而不是提示函数未定义。所以应该代码没问题,是编译环境的函数库调用有问题。
你怎么装的开发环境?不会是装了头文件没装对应 so 吧?
不过你需要确定这个xxxx 应该是哪个才行。
你现在提示是 undefined reference 而不是提示函数未定义。所以应该代码没问题,是编译环境的函数库调用有问题。
你怎么装的开发环境?不会是装了头文件没装对应 so 吧?
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯