memset头文件 linux,error: ‘memset’ was not declared in this scope

http://blog.sina.com.cn/s/blog_79d599dc0100r2vz.html

昨天一同事把代码准备重新全新布置到新的环境上去的时候,代码报错了,先开始报错如下:

error: ‘memset’ was not declared in this scope

error: ‘strcat’ was not declared in this scope

首先想到的肯定是头文件未包含进来。但不可能,因为这套代码已经在其它环境上编译过N次啦,不可能代码里面没有添加对头文件的包含啊。

于是想到是否是因为新环境里面include目录下没有对应的头文件呢?还或是include目录在这个环境下变了呢?不是/usr/include下面啦。

经过一查,上面两个都不是。

这个时候就有点郁闷啦。把环境按以前的都设置一遍,还是一样。没办法啦。只好放今天来重新查查啦。

今天早上来,可能时间也比较充足,所以慢慢来。既然报这个错误,那我把这个头文件再添加到.h代码里面呢?

然后发现添加一个,某个错误就能编译过去。看来还真是头文件的问题。

但接下来还有其他几个警告,如下:

test.cpp:213: warning: ignoring return value of ‘int system(const char*)’, declared with attribute warn_unused_result

test.cpp: In member function ‘int test::load(std::string&)’:

test.cpp:58: warning: deprecated conversion from string constant to ‘char*’

test.cpp:58: warning: deprecated conversion from string constant to ‘char*’

test.cpp:58: warning: deprecated conversion from string constant to ‘char*’

test.cpp:58: warning: deprecated conversion from string constant to ‘char*’

test.cpp:58: warning: deprecated conversion from string constant to ‘char*’

test.cpp:94: warning: suggest explicit braces to avoid ambiguous ‘else’

test.cpp:61: warning: ignoring return value of ‘int pipe(int*)’, declared with attribute warn_unused_result

居然这些还报,一一为这些没有判断函数返回值的作了修改。编译通过。

然后就想为什么这个系统要求这么严格呢?查一下GCC的版本,如下:

以前旧环境:

gcc 版本 4.1.2 20070626 (Red Hat 4.1.2-14)

现在的新环境:

gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5)

原来是GCC版本不同。所以想GCC新版本对代码的这些要求现在越来越严格啦。还有函数的一些检查项,还有编译时候MAKEFILE里面对库文件的引用。

具体是否是因为这个严格的原因,没有去详细查GCC的文档。但猜想是这样吧。

以后如果代码里面对某个函数的头文件还是尽量包含进来吧,至少不是什么坏事。

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

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

相关文章

linux中ls文件内存大小,Linux下用ls和du命令查看文件以及文件夹大小

webdriver零碎知识点#零碎知识点,用于记录平时遇到的比较杂的知识点 driver.current_url 获取当前url phantomjs 实现无浏览器界面自动化测试(driver webdriver.Phanto ...ORACLE删除当前用户下所有的表的方法1.如果有删除用户的权限,则可以: drop user user_name cascade; 加…

linux物理内存地址与iomem,一种Linux系统物理内存镜像文件分析方法_4

模块信息,如图7所示,给出了本发明的实施例中 模块结构关系图,modules变量指向某一个已加载模块结构体module地址,所有已加载模 块其module形成一个双向链表,如图7所示,据此可以获取到所有已加载模块。[0099…

linux设备分层优点,Linux设备驱动的分层设计思想

代码清单8第2行获取platform_data,而platform_data实际上是定义GPIO按键硬件信息的数组,第31行的for循环工具这些信息申请GPIO并初始化中断,对于LDD6140电路板而言,这些信息如代码清单10。代码清单10 LDD6410开发板GPIO按键的plat…

linux 关闭桌面环境,Ubuntu 14.04上的Cinnamon桌面环境PPA被关闭

今天Cinnamon桌面环境的开发者宣布关闭Cinnamon桌面环境的PPA,这意味着以后在Ubuntu上安装Cinnamon桌面环境将变得很难。关于为什么要关闭PPA,Cinnamon PPA的维护者Gwendal Le Bihan做出了以下解释:“稳定的Cinnamon PPA将不再提供&#xff0…

linux sd卡读写出错,linux系统SD卡读写问题

请教有过linux系统SD卡读写经验的前辈。我的项目是对FPGA上的SD卡部分做测试,在测试过程中发现在对SD卡所有领域进行读写操作时1、bus width 选择1-bit的速度4-bit是差不多的,这与我预想的不同,想知道问题出在哪里?(理论上4bit 速度应该是1-…

genymotion linux 32,Ubuntu Linux 32bit - 不是Genymotion虚拟设备

因为4天我没有找到解决方案我的genymotion有问题 我正在使用Ubuntu 12.04 32位(architecure:i686)并安装android studio并将genymotion的插件放入其中succefully ......现在我的问题,当点击genymotion设备管理器,列表是空的,当我试…

grub linux rootfs,rootfs文件系统(笔记)(草稿)

文件系统简介文件系统就是个软件,帮用户来管理一些二进制的信息,管理外存上存储的这些二进制各种文件在内存中都是以二进制的形式来存在的,如果没有文件系统,用户就需要自己去决定这些二进制的东西是什么,需要自己去和…

linux 如何查看属性,linux 下查看系统属性

linux 下查看系统属性(2009-06-28 19:01:34)标签:linux杂谈分类:OSlinux下查看系统属性1、查看cpu信息查看所有cpu信息:cat /proc/cpuinfo查看cpu类型: grep "model name" /proc/cpuinfo2、查看内存信息:查看…

幼儿学数数的c语言程序,【资源学习】c语言程序代码,登录幼儿园200个小朋友的数据...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼编写程序,登录幼儿园200个小朋友的数据:姓名、性别、年龄、身高、体重、出生日期,分别按年龄排序后输出。要求:(1)登录数据用函数input()(2)按身高排序用函数sort()(3)输出排序结果用…

c语言传入参数不正确,请高手看看一下程序怎么回事啊?老是提示传参数错误...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼#includevoid main(){ void average(float, int);void search(float,int);static float score[][4]{{65,67,70,60},{80,87,90,81},{99,90,100,98}};average(score,12);search(score,2);}void average(float *p,int n){float *p_end…

vs用c语言写贪吃蛇,熬书几个月,终于编出简易的贪吃蛇了,VS2013

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼#include#include#include#include#define X 30#define Y 15void guozi(int *x, int *y);int main(void){char map[X][Y];int x;int y;//横纵坐标int i;int j;//标记蛇头int p, q;//标记蛇尾int t, d;//寻找蛇尾int n 4;//蛇的长度…

中国电信学院c语言题库,电脑题库试题精编版.doc

1【单选题】以下关于图灵机的说法,正确的是( ?)。A、图灵机是一种计算机理论模型B、图灵机是用于图灵测试的计算机C、图灵机是第一台机械式计算机D、图灵机是冯诺依曼体系结构计算机正确答案: A?2【单选题】关于中文信息编码,以下正确的叙述…

统计c语言中英文字幕,C语言日记——递归

C语言日记——递归首先,允许我从《c primer plus》中摘一句话:C允许函数调用它自己,这种调用称为递归。有一段时间一直搞不清楚递归的实质,直到看到如下代码:#includeint up_and_down(int n);int main() {up_and_down(…

gnu linux中 使用,在Linux上使用GNU sed的方法

grep 命令grep 在文件(或命令输出)中搜索指定正则表达式,并且在标准输出中输出匹配的行。样例显示文件 /etc/passwd 中用户 gacanepa 的信息,忽略大小写。#grep-i gacanepa /etc/passwd显示 /etc 文件夹下所有 rc 开头并跟随任意数字的内容。#ls-l /etc …

android开机自动开启zram,低内存配置  |  Android 开源项目  |  Android Open Source Project...

Android 支持内存为 512 MB 的设备。本文档旨在帮助 OEM 优化和配置 Android 内核 4.4,使其能够在低内存设备上运行。在下文所述的优化措施中,有几项非常通用,甚至也可应用于以前的版本。Android 内核 4.4 平台优化改善了内存管理采用了经验证…

android 自动 键盘,关于Android中的软键盘

InputMethodService为我们的输入法创建了一个Dialog,并且将该Dialog的Window的某些参数(如Gravity)进行了设置,使之能够在底部或者全屏显示。当我们点击输入框时,系统对活动主窗口进行调整,从而为输入法腾出相应的空间&#xff0c…

Android渠道包自动发布市场,Android Gradle实现打包指定渠道后自动上传到fir

fir分三个主要步骤1.获取fir上传凭证2.上传APKAPP logo图标3.获取最新的下载地址供别人下载注:python使用的是requests网络请求库1.获取fir上传凭证image.png代码如下:# 第一步:获取fir上传凭证print("get fir upload certificate"…

android studio vfs,Android Studio:尝试呈现XML布局的InvalidVirtualFileAccessException

我正在尝试在我的应用中预览xml布局(任何xml布局).我正在使用Android Studio 1.5 Preview 2.我一遍又一遍地收到此错误:InvalidVirtualFileAccessException:访问无效的虚拟文件:file:// D:/Scott/Android/Studio/MyApp/app/build/intermediates/classes/debug/com/scott/myapp/…

android 基类fragment,Android DialogFragment 基类的定制

鸿洋博客介绍:DialogFragment的基本使用好处:1:使用DialogFragment来管理对话框,当旋转屏幕和按下后退键时可以更好的管理其声明周期,它和Fragment有着基本一致的生命周期2.DialogFragment也允许开发者把Dialog作为内嵌…

升级鸿蒙系统无法选择应用,申请鸿蒙系统有一个应用选择怎么选择呢

[分享交流]申请鸿蒙系统有一个应用选择怎么选择呢34364电梯直达huafen774590890新学乍练发表于 2020-12-18 22:19:17来自:HUAWEI Mate 30 Pro 5G最新回复 2020-12-19 09:31:55要怎么选择大家知道吗?想着你的狼自成一派发表于 2020-12-18 22:22:29来自&am…