printf是在libc库中么?
libc中果然有很多的函数,使用nm看了一下,里面竟然还有reboot函数,汗!
使用grep,可以看到各种 printf 也都在这里头。
objdump是看函数的地址与函数名对应的,虽然也能证明printf在libc中,但是感觉有些大才小用哪。
使用objdump一下,比nm多出来一些信息,看来nm也可以把函数的地址打印出来的,呵呵。
[xiew@localhost lib]$ nm libc-2.3.2.so |grep printf
000e9210 t __argp_fmtstream_printf
00052040 W asprintf
00052040 T __asprintf
00052040 t __asprintf_internal
0004bf80 t buffered_vfprintf
00055ff0 t buffered_vfprintf
U _dl_debug_printf@@GLIBC_PRIVATE
00052080 T dprintf
00051f50 T fprintf
00065ea0 W fwprintf
00065ea0 t __fwprintf
00052080 t __GI_dprintf
00051f50 t __GI_fprintf
0004c820 t __GI___printf_fp
00052000 t __GI_sprintf
00047690 t __GI_vfprintf
00051f50 W _IO_fprintf
0006a2d0 t _IO_obstack_printf
0006a1c0 t _IO_obstack_vprintf
00051f80 T _IO_printf
00052000 T _IO_sprintf
00069dc0 t _IO_vasprintf
00069f30 t _IO_vdprintf
00047690 T _IO_vfprintf
00047690 t _IO_vfprintf_internal
000520c0 t _IO_vfwprintf
0006a050 t _IO_vsnprintf
00064aa0 T _IO_vsprintf
00064aa0 t _IO_vsprintf_internal
00066070 t _IO_vswprintf
0006a2d0 W obstack_printf
0006a1c0 W obstack_vprintf
0004f160 T parse_printf_format
00051f80 T printf
001364c8 b __printf_arginfo_table
0004c820 T __printf_fp
0004fcd0 t __printf_fphex
00138c20 b __printf_function_table
00051660 T printf_size
00051f20 T printf_size_info
0004baf0 t printf_unknown
00055b10 t printf_unknown
0004f0d0 t __register_printf_function
0004f0d0 W register_printf_function
00051fc0 W snprintf
00051fc0 t __snprintf
00052000 T sprintf
00065ee0 T swprintf
00069dc0 W vasprintf
00069f30 W vdprintf
00047690 T vfprintf
000520c0 W vfwprintf
000520c0 t __vfwprintf
0004c7e0 T vprintf
0006a050 W vsnprintf
0006a050 W __vsnprintf
00064aa0 W vsprintf
00066070 W vswprintf
00066070 t __vswprintf
00065f20 T vwprintf
00065f60 T wprintf
---------------------
作者:csdnxw
来源:CSDN
原文:https://blog.csdn.net/csdnxw/article/details/1639640?utm_source=copy
版权声明:本文为博主原创文章,转载请附上博文链接!
以上提到了两个工具,有时间要了解,一个是nm,一个是
objdump
printf是在libc库中么?的更多相关文章
- 动态库中的soname
soname( Short for shared object name) 其是应用程序加载dll 时候,其寻找共享库用的文件名.其格式为 lib + math+.so + ( major versi ...
- 如何让静态库中的可执行程序不调用的函数不链接进该可执行程序?(-ffunction-sections -Wl,--gc-sections)
关键词: -Wl,--gc-sections -ffunction-sections 链接 elf 库 有时我们会遇到这种情况,可执行程序需要链接一些静态库,但是静态库中的函数并没有全部使 ...
- c++函数库中一些实用的函数
有一些程序,虽然写起来不难,但是可能比较麻烦或容易出错,这时就可以用c++函数库里自带的一些实用的函数. 这里只记录一些不太常见的函数. ------------------------------- ...
- Lib作为“静态库”与“动态库”中的区别
Lib作为“静态库”与“动态库”中的区别 0. 前言: 什么是静态连接库: 静态库在链接阶段,会将汇编生成的目标文件.o与引用到的库一起链接打包到可执行文件中.因此对应的链接方式称为静态链接. 为什么 ...
- 【C】——动态库中函数的作用范围
如何生成动态库 net小伙 已经在此文中说明——[C]——如何生成静态库和动态库:接下来就要看看动态库中函数的作用范围: 首先我们使用命令 gcc -fPIC -shared -o libtest ...
- Golang调用windows下的dll动态库中的函数
Golang调用windows下的dll动态库中的函数 使用syscall调用. package main import ( "fmt" "syscall" & ...
- C标准库中atoi的一种可能的实现
为避免与标准库中的atoi产生歧义, 我将自己编写的函数命名为strToInt, 以下是示例代码 #include <stdio.h> int strToInt(const char *s ...
- 修改so库中的依赖名
修改so库中的依赖名 在ArchLinuxArm上有一些针对aarch64, arm, armeabi-v7a等Android常用架构的so库可以下载,有时候可以省去很多编译时间,且都是编译optim ...
- 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题4---共享库中嵌套库带路径【已解决】
[Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题4-共享库中嵌套库带路径[已解决] 标签:[Linux开发] 紧接着上一篇,我居然又尝试了一下编译opencv,主要是因为由于交 ...
随机推荐
- MongoDB 学习记录(一)
前言:之前一直只是简单了解MongoDB,而且是随便看看的那种,今天决定好好的整理一下,以便自己能 温故而知新 1.MongoDB是什么 MongoDB 是一个高性能,开源,无模式的文档型数据库,开 ...
- ElasticSearch6.1.1集群搭建
其实早就想研究ES了,因为之前用solr,资料较少(这倒不是问题,有问题去官网读文档),貌似用的人比较少?(别打我)前几天去京东面试,我觉得有必要了解一下es,昨天晚上简单了解了官方文档,今天居然鼓捣 ...
- django系列 1 :python+django环境搭建 +mac提示找不到manage.py命令
1.安装python3 2.设置python3的环境变量 3.进入命令行模式,输入 pip install django 1.10.3 4.验证是否安装完成 pip show django 5.dja ...
- (二叉树 BFS DFS) leetcode 104. Maximum Depth of Binary Tree
Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the long ...
- mysql视图、触发事务、存储过程
视图 视图是一个虚拟表(非真实存在的),其本质就是根据SQL语言获取动态的数据集,并为其命名,用户使用时只需要使用名称即可获得结果集,可以将结果集当做表来使用. 视图是存在数据库中的,如果我们程序中使 ...
- 有时候eclipse 导入maven项目 启动的时候回出现这样一个问题
严重: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catali ...
- root登陆欢迎界面设置
root登陆欢迎界面设置 #!/bin/bash echo -ne "\033[0;36m" cat<<EOF _oo0oo_ (| -_- |) \ = / ___/ ...
- bzoj2957 奥妙重重的线段树
https://www.lydsy.com/JudgeOnline/problem.php?id=2957 线段树的query和update竟然还可以结合起来用! 题意:小A的楼房外有一大片施工工地, ...
- SQL语法基础之SELECT
SQL语法基础之SELECT 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.SELECT查看帮助信息 1>.查看SELECT命令的帮助信息 mysql> ? SEL ...
- linux下生成00 01 02..99的这些数
[root@localhost ~]# seq -s " " -w 9901 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 ...