【C语言】解决初始化数组时报错“undefined reference to `memcpy'”
【C语言】解决初始化数组时报错“undefined reference to `memcpy'”
零、报错
代码:
char start[] = {0xd, 0xa, 0xb3, 0xcc, 0xd0, 0xf2, 0xd2, 0xd1, 0xc6, 0xf4, 0xb6, 0xaf, 0xa1, 0xad, 0xa1, 0xad, 0xd, 0xa, 0};
报错:
interface.o: In function `main':
/home/yu/fs4412/project/uart/interface.c:45: undefined reference to `memcpy'
/home/yu/fs4412/project/uart/interface.c:85: undefined reference to `memcpy'
/home/yu/fs4412/project/uart/interface.c:90: undefined reference to `memcpy'
make: *** [Makefile:23:all] 错误 1
壹、解决
猜想是C语言经过预处理,会把数组初始化替换成用memcpy函数处理,由于没导入对应头文件,故报错,把初始化方法换一下即可,定义大小,后面单独赋值,修改后代码如下:
// 初始化时只指定数组大小
char start[19];
// 单独对数组元素进行赋值
start[0] = 0xd;
start[1] = 0xa;
start[2] = 0xb3;
start[3] = 0xcc;
start[4] = 0xd0;
start[5] = 0xf2;
start[6] = 0xd2;
start[7] = 0xd1;
start[8] = 0xc6;
start[9] = 0xf4;
start[10] = 0xb6;
start[11] = 0xaf;
start[12] = 0xa1;
start[13] = 0xad;
start[14] = 0xa1;
start[15] = 0xad;
start[16] = 0xd;
start[17] = 0xa;
start[18] = 0;
贰、可以用AI解决
把这行代码转变为单独赋值的,初始化时只指定大小,后面单独赋值
char start[] = {0xd, 0xa, 0xb3, 0xcc, 0xd0, 0xf2, 0xd2, 0xd1, 0xc6, 0xf4, 0xb6, 0xaf, 0xa1, 0xad, 0xa1, 0xad, 0xd, 0xa, 0};

【C语言】解决初始化数组时报错“undefined reference to `memcpy'”的更多相关文章
- [CentOS]CentOS下编译CPP文件时报错[undefined reference to `__gxx_personality_v0' collect2: ld]的解决办法
在CentOS环境下编译CPP时报出 undefined reference to `__gxx_personality_v0' collect2: ld 以上错误,调查了一下,加上参数[-lstdc ...
- Apache配置压缩优化时报错——undefined symbol: inflateEnd
Apache配置压缩优化时报错——undefined symbol: inflateEnd 环境:CentOS 6.4 软件版本:httpd-2.4.6 apr-1.4.8 apr-util-1.5. ...
- [转载]解决linux 下多线程错误 undefined reference to `sem_init'
转自:https://blog.csdn.net/yzycqu/article/details/7396498?utm_source=copy 解决linux 下多线程错误 undefined ref ...
- [转载]undefined reference to `memcpy@GLIBC_2.14'
转自:http://blog.sina.com.cn/s/blog_6c5a47d30102wfw9.html undefined reference to `memcpy@GLIBC_2.14' ( ...
- 记一次oracle安装错误:INFO: //usr/lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14'
--一次oracle安装错误,oracle version:11.2.0.1.0[root@localhost ~]# cat /etc/issue\SKernel \r on an \m [root ...
- 执行安装redis报错undefined reference to `__sync_add_and_fetch_4'
执行make命令时报错: zmalloc.o: In function `zmalloc_used_memory': /var/lib/tcommsvr/redis-2.8.0-rc4/src/z ...
- linux + eclipse + cdt 报错undefined reference......好麻烦的,这位大牛给出的方法可行,特此MARK!!!!
http://bbs.csdn.net/topics/390239632 kerosun kerosun 等级: 结帖率:96.92% 楼主 发表于: 2012-10-11 12:00:51 比如 ...
- centos7 安装PHP5.3 报错undefined reference to symbol '__gxx_personality_v0@@CXXABI_1.3'
系统:centos 7 原有PHP版本:5.6.27,5.4.45 试着安装nginx+多php版本,首先安装了5.6和5.4的版本,一帆风顺,但是在安装5.3.29版本时,出现问题了,configu ...
- boost.numpy编译报错:undefined reference to `PyInt_FromLong' libboost_numpy.so: undefined reference to `PyCObject_AsVoidPtr'
[ 31%] Built target boost_numpy[ 36%] Building CXX object libs/numpy/example/CMakeFiles/dtype.dir/dt ...
- cocos2d-x android 添加新场景报错: undefined reference to `vtable for XXX'
转载自 居家懒人 http://www.cnblogs.com/JD85/archive/2012/09/17/2688128.html 加入写了新场景SecondScene,结果在cpp文件里类名地 ...
随机推荐
- Arcgis加载Geoserver矢量切片
原帖地址 洒家废物 - Arcgis加载Geoserver矢量切片 准备点线面图层并发布图层组 此处我准备了石家庄市的县界名称(点).高速公路(线).县界(面),依次发布geoserver服务,创建图 ...
- unordered_map比map慢?
先说结论:unordered_map不维护键的顺序,因此不能按顺序访问元素,因此如果你需要遍历表时若选用unordered_map就肯定比map慢 1. 数据结构与底层实现 unordered_map ...
- Redis 实战篇——Redis 客户端(Jedis,Luttece,Redisson)
一.Jedis,Redisson,Lettuce三者的区别 共同点:都提供了基于Redis操作的Java API,只是封装程度,具体实现稍有不同. 不同点: 1.1.Jedis 是Redis的Java ...
- CAS实现原理
一.什么是CAS? 在计算机科学中,比较和交换(Conmpare And Swap)是用于实现多线程同步的原子指令. 它将内存位置的内容与给定值进行比较,只有在相同的情况下,将该内存位置的内容修改为新 ...
- 原生JS实现一个日期选择器(DatePicker)组件
这是通过原生HTML/CSS/JavaScript完成一个日期选择器(datepicker)组件,一个纯手搓的组件的开发.主要包括datepicker静态结构的编写.日历数据的计划获取.组件的渲染以及 ...
- Q:Linux下处理^M字符
Linux下处理^M字符,很多时候windows环境中编辑过的文件,在Linux下经常会出现^M字符,可以通过以下方式处理该字符. 方法一:vim命令打开文件,然后在vim命令模式下输入以下内容: 1 ...
- 并发编程 - 线程同步(六)之锁lock
通过前面对Interlocked类的学习,相信大家对线程同步机制有了更深的理解,今天我们将继续需要另一种同步机制--锁lock. lock是C#语言中的关键字,是线程同步机制的一种简单的互斥锁实现方式 ...
- 具体数学第六章习题选做(genshining)
11.对于 \(n\ge 0\),求以下式子的封闭形式. \[\sum_k(-1)^k{n\brack k} \] 由于 \[\sum{n\brack k}x^k=x^{\overline n} \] ...
- .NET Core常用集合的几个坑
C#中的常见集合 注意,箭头线不代表继承关系,只代表功能上的加强,如有错误,欢迎指出. 泛型集合时间复杂度 集合类型 添加 删除 查找 访问(索引/键) 遍历 备注 List<T> O(1 ...
- 如何修改JSONObject 的值
问 题 { "result": { "total": "3", "shops": [ { "shopId&qu ...