gcc怎么编译带有c11可选函数的代码??

C、C++和Java语言
回复
hanis_ghost
帖子: 41
注册时间: 2015-06-19 21:16
送出感谢: 26 次
接收感谢: 0

gcc怎么编译带有c11可选函数的代码??

#1

帖子 hanis_ghost » 2016-07-14 21:11

c11中的一些处理字符串的函数比如strnlen_s() (标准库中是strlen()) , strcpy_s() (标准库中是strcpy()),等等,用gcc编译是显示对‘strnlen_s’未定义的引用 ,这个怎么处理??谢谢
头像
astolia
论坛版主
帖子: 3108
注册时间: 2008-09-18 13:11
送出感谢: 1 次
接收感谢: 512 次

Re: gcc怎么编译带有c11可选函数的代码??

#3

帖子 astolia » 2016-07-15 10:23

Bounds-checking系列函数在gcc中的支持程度取决于底层glibc库,但不幸的是glibc目前尚未实现: https://gcc.gnu.org/wiki/C11Status
不过有些可以用glibc的其他东西凑合一下

代码: 全选

#ifndef strnlen_s
#define strnlen_s strnlen
#endif
当然也可以自己写个实现
这些用户感谢了作者 astolia 于这个帖子 (主题 2):
hanis_ghost (2016-07-15 17:34) • 科学之子 (2017-01-06 16:19)
评价: 7.41%
回复

回到 “C/C++/Java”