linux 下函数的源码
我在找linux下c下面atoi的源码的时候发现找不到;下面是我的查找过程:
1,在stdlib.h下面找到
- C/C++ code
extern __inline int__NTH (atoi (__const char *__nptr)){ return (int) strtol (__nptr, (char **) NULL, 10);}2,然后grep __NTH *,找到:
- C/C++ code
#ifndef __NTH# define __NTH(fct) fct __THROW#endif
3,课件__NTH仅仅是抛出错误,与功能实现无关,return strtol 是重点;继续在stdlib.h里面找到:
- C/C++ code
extern __inline long int__NTH (strtol (__const char *__restrict __nptr, char **__restrict __endptr, int __base)){ return __strtol_internal (__nptr, __endptr, __base, 0);}4,可见__strtol_internal是功能的实现函数;然后我
- Perl code
[biozy@gLoginNode1 include]$ grep __strtol_internal *inttypes.h:# ifndef __strtol_internal_definedinttypes.h:extern long int __strtol_internal (__const char *__restrict __nptr,inttypes.h:# define __strtol_internal_defined 1inttypes.h: return __strtol_internal (nptr, endptr, base, 0);stdlib.h:#ifndef __strtol_internal_definedstdlib.h:extern long int __strtol_internal (__const char *__restrict __nptr,stdlib.h:# define __strtol_internal_defined 1stdlib.h: return __strtol_internal (__nptr, __endptr, __base, 0);[biozy@gLoginNode1 include]$ grep __strtol_internal */*[biozy@gLoginNode1 include]$ grep __strtol_internal */*/*[biozy@gLoginNode1 include]$ grep __strtol_internal */*/*/*[biozy@gLoginNode1 include]$ grep __strtol_internal */*/*/*/*
什么也没有找到没有找到原始定义的地方,stdlib.h和inttypes.h只是 extern的函数
求助大神找到源文件
[解决办法]
如果安装的时候有选择源代码安装的话,系统本身就有代码.
另外,在网上搜一下,这里有一个:
http://ishare.iask.sina.com.cn/f/25078627.html
[解决办法]
实在在so里,你看不到。
[解决办法]
http://www.gnu.org/software/libc/index.html