[Linux] undefined reference to `itoa'

在linux写了个简单的C程序,里面用到了itoa,但是编译时提示“undefined reference to `itoa'”,本以为加上-lc就行了,可结果还是一样。上网发现,有人说这个函数在linux中是不存在的,一般用sprintf来代替。看下面代码及注释吧:

#include <stdio.h>
#include <stdlib.h>
//#include <unistd.h>
#include <string.h>
int num = 0;
char namebuf[100];
char prefix[] = "/tmp/tmp/p";
char* gentemp()
{
int length, pid;
pid = getpid();
strcpy(namebuf, prefix);
length = strlen(namebuf);
//itoa(pid, &namebuf[length], 10);		// Unix版本:itoa()在头文件<stdlib.h>中不存在
sprintf(namebuf+length, "%d", pid);		// 使用sprintf将整数转换成字符串
strcat(namebuf, ".");
length = strlen(namebuf);
printf("before do...while\n");
char command[1024] = {0};
do 
{
//itoa(num++, &namebuf[length], 10);
sprintf(namebuf+length, "%d", num++);
sprintf(command, "touch %s", namebuf);	// 通过touch来创建文件
system(command);
printf("command = %s, namebuf[%d]=%d\n", command, num-1, num-1);
} while (num < 50 && access(namebuf, 0) != -1);	// access判断文件是否存在
printf("end of do...while\n");
return namebuf;
}
int main( void )
{
char *p = gentemp();
printf("%s\n", p);
return 0;
}


 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/407313.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React开发(119):代码原因

<Form.Item label"协议" name"模板文件" required>{getFieldDecorator(agreementFilePath[${k}], {})(<Uploadmultiple{false}onChange{this.handleFileChange}beforeUpload{this.beforeUpload}customRequest{(data) > this.onUpload(data, k)…

Git之创建版本库

什么是版本库呢&#xff1f;版本库又名仓库&#xff0c;英文名repository&#xff0c;你可以简单理解成一个目录&#xff0c;这个目录里面的所有文件都可以被Git管理起来&#xff0c;每个文件的修改、删除&#xff0c;Git都能跟踪&#xff0c;以便任何时刻都可以追踪历史&#…

显示环境变量的值

/*功能&#xff1a;显示环境变量的值*/#include <stdio.h>extern char **environ;// 查找环境变量的值&#xff0c;与系统调用getenv()功能相同char* findenv(char *name) // 在环境变量中查找指定的变量名&#xff0c;如找到&#xff0c;则返回其值(后的字符串){int l…

reading notes -- Amazon.com Recommendations: Item-to-Item Collaborative Filtering

中英译本及下载&#xff1a;http://blog.sina.com.cn/s/blog_586631940100pduh.html 以下是摘要笔记&#xff1a; 算法应当结合用户的习惯&#xff0c;用户特点的分类 观影习惯是比较单一 还是比较分散 这是不同的 一、推荐的宗旨&#xff1a;推荐应该要帮助顾客找到和发现新的…

Leetcode刷题(3)整数反转

最好的种树是十年前,其次是现在。歌谣 每天一个前端小知识 提醒你改好好学习了 知乎博主 csdn博主 b站博主 放弃很容易但是坚持一定很酷 我是歌谣 喜欢就一键三连咯 你得点赞是对歌谣最大的鼓励 1题目 给你一个 32 位的有符号整数 x &#xff0c;返回将 x 中的数字部分反…

Git之diff和status

我们已经成功地添加并提交了一个readme.txt文件&#xff0c;现在&#xff0c;是时候继续工作了&#xff0c;于是&#xff0c;我们继续修改readme.txt文件&#xff0c;改成如下内容&#xff1a; 现在&#xff0c;运行git status命令看看结果 git status命令可以让我们时刻查看工…

移动端H5终端适配方案

1.JS的根据不同屏幕宽度动态设置html的font-size&#xff0c;使用rem布局。 a.手淘方案 flexiblerem&#xff08;参考https://github.com/amfe/article/issues/17&#xff09; 引入flexible.js&#xff0c;不需要在html结构中加入viewport标签。 flexible.js会在元素上增加一…

WWW超文本源码浏览器

Linux下的C程序&#xff1a;读取远程服务器上的网页源码。 /*功能&#xff1a;WWW超文本源码浏览器 */#include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdarg.h> #include <sys/socket.h> #include <netinet/in.h&g…

TCP为何采用三次握手来建立连接,若采用二次握手可以吗

1. TCP简介 TCP&#xff08;Transmission Control Protocol 传输控制协议&#xff09;是一种面向连接&#xff08;连接导向&#xff09;的、可靠的、基于IP的传输层协议&#xff0c;采用三次握手确认建立一个连接。 TCP为了保证报文传输的可靠[1]&#xff0c;就给每个包一个序号…

在asp.net中备份还原SQL Server数据库

在web中&#xff0c;安全性主要体现在两个方面&#xff1a;一个是程序安全性&#xff0c;即防止网页在插入恶意代码&#xff1b;另一个是数据库安全性&#xff0c;这个我们可以经常备份数据库来实现。在文中&#xff0c;我将演示如果在网页中备份和恢复数据库。其实备份和恢复数…

Leetcode刷题(4)罗马数字转整数

最好的种树是十年前,其次是现在。歌谣 每天一个前端小知识 提醒你改好好学习了 知乎博主 csdn博主 b站博主 放弃很容易但是坚持一定很酷 我是歌谣 喜欢就一键三连咯 你得点赞是对歌谣最大的鼓励 罗马数字包含以下七种字符: I&#xff0c; V&#xff0c; X&#xff0c; L&a…

深入理解移动前端开发之viewport

在移动设备上进行网页的重构或开发&#xff0c;首先得搞明白的就是移动设备上的viewport了&#xff0c;只有明白了viewport的概念以及弄清楚了跟viewport有关的meta标签的使用&#xff0c;才能更好地让我们的网页适配或响应各种不同分辨率的移动设备。 一、viewport的概念 通…

Git之版本回退

像这样&#xff0c;你不断对文件进行修改&#xff0c;然后不断提交修改到版本库里&#xff0c;就好比玩RPG游戏时&#xff0c;每通过一关就会自动把游戏状态存盘&#xff0c;如果某一关没过去&#xff0c;你还可以选择读取前一关的状态。有些时候&#xff0c;在打Boss之前&…

整型数组的循环右移

/*实现整型数组的循环右移cycleMoveR1&#xff1a;临时空间比较大&#xff0c;但是时间复杂度为O(1)cycleMoveR2&#xff1a;临时空间比较小&#xff0c;时间复杂度为O(n)*/#include <stdio.h>#include <stdlib.h>#include <string.h>#include <assert.h&…

Leetcode刷题(5)最长公共前缀

最好的种树是十年前,其次是现在。歌谣 每天一个前端小知识 提醒你改好好学习了 知乎博主 csdn博主 b站博主 放弃很容易但是坚持一定很酷 我是歌谣 喜欢就一键三连咯 你得点赞是对歌谣最大的鼓励 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀&…

Internal Server Error - http code 500

Eror Example 1 :转载于:https://www.cnblogs.com/shuman/p/3938096.html

面包与童话

面包主导童话? 或许吧&#xff01; 油吧 我会吃上面包的 至于童话 随便吧 与我无关 心也会慢慢慢慢的平静下来的 转载于:https://www.cnblogs.com/fairy-tale/articles/1272636.html

Git之工作区和暂存区

工作区&#xff08;Working Directory&#xff09; 就是你在电脑里能看到的目录&#xff0c;比如我的learngit文件夹就是一个工作区 版本库&#xff08;Repository&#xff09; 工作区有一个隐藏目录.git&#xff0c;这个不算工作区&#xff0c;而是Git的版本库 Git的版本库…

vue移动端html5页面根据屏幕适配的四种解决方法

最近做了两个关于h5页面对接公众号的项目&#xff0c;不得不提打开微信浏览器内置地图导航的功能确实有点恶心。下次想起来了的话&#xff0c;进行总结分享一下如何处理。在vue移动端h5页面当中&#xff0c;其中适配是经常会遇到的问题&#xff0c;这块主要有死个方法可以适用。…