【C语言】【unix c】同名局部变量之间关系
来源:互联网 发布:java简单编程题 编辑:程序博客网 时间:2024/05/12 18:41
代码: #include <stdio.h> #include <sys/types.h> #include <unistd.h> int j; void count(void) { static int i = 1; printf("++i1 = %d\n", ++i); printf("i1 address:%p\n", &i); return; } void count1(void) { static int i; printf("++i2 = %d\n", ++i); printf("i2 address:%p\n", &i); return; } int main(void) { int i; for(i = 0; i < 5; i++) { count(); count1(); } printf("j address is:%p\n", &j); getchar(); return 0; } 命令: tarena@ubuntu:~/day/day26$ ./a.out 结果: pid:4237 ++i1 = 2 i1 address:0x804a01c ++i2 = 1 i2 address:0x804a028 ++i1 = 3 i1 address:0x804a01c ++i2 = 2 i2 address:0x804a028 ++i1 = 4 i1 address:0x804a01c ++i2 = 3 i2 address:0x804a028 ++i1 = 5 i1 address:0x804a01c ++i2 = 4 i2 address:0x804a028 ++i1 = 6 i1 address:0x804a01c ++i2 = 5 i2 address:0x804a028 j address is:0x804a02c 测试编译连接后的状态信息: 命令: tarena@ubuntu:~/day/day26$ nm a.out 结果: 08049f28 d _DYNAMIC 08049ff4 d _GLOBAL_OFFSET_TABLE_ 0804868c R _IO_stdin_used w _Jv_RegisterClasses 08049f18 d __CTOR_END__ 08049f14 d __CTOR_LIST__ 08049f20 D __DTOR_END__ 08049f1c d __DTOR_LIST__ 08048800 r __FRAME_END__ 08049f24 d __JCR_END__ 08049f24 d __JCR_LIST__ 0804a020 A __bss_start 0804a014 D __data_start 08048640 t __do_global_ctors_aux 080483c0 t __do_global_dtors_aux 0804a018 D __dso_handle w __gmon_start__ 08048632 T __i686.get_pc_thunk.bx 08049f14 d __init_array_end 08049f14 d __init_array_start 08048630 T __libc_csu_fini 080485c0 T __libc_csu_init U __libc_start_main@@GLIBC_2.0 0804a020 A _edata 0804a030 A _end 0804866c T _fini 08048688 R _fp_hw 080482f8 T _init 08048390 T _start 0804a020 b completed.7108 08048444 T count 08048485 T count1 0804a014 W data_start 0804a024 b dtor_idx.7110 08048420 t frame_dummy U getchar@@GLIBC_2.0 U getpid@@GLIBC_2.0 0804a01c d i.2461 //在程序中两个函数的变量名是一样的,但是为了区分,在编译后局部变量的后面会有一个编号 0804a028 b i.2470 // 变量名前面的d表示已初始化的数据段,b是未初始化的局部变量,也在数据段 0804a02c B j //变量前面大写字母表示全局变量,小写的代表局部变量 080484c6 T main U printf@@GLIBC_2.0
阅读全文
0 0
- 【C语言】【unix c】同名局部变量之间关系
- C语言—局部变量同名初始化问题
- C语言局部变量
- C语言局部变量
- C语言中全局变量和局部变量同名时的访问方法
- C语言中的局部变量
- C语言 -- 返回局部变量
- c语言返回局部变量
- 【C语言】【unix c】变量和常量
- C语言局部变量、全局变量、静态局部变量、静态全局变量
- c语言全局变量和局部变量
- C语言的全局变量和局部变量
- c语言全局变量和局部变量
- c语言全局变量和局部变量
- 关于c语言全局变量局部变量
- C语言局部变量和全局变量
- C语言之局部变量和全局变量
- c语言中全局变量和局部变量
- 198. House Robber
- MyBatis框架的认识
- 异常处理
- Dubbo基本原理机制
- reverse number
- 【C语言】【unix c】同名局部变量之间关系
- Cookie/Session笔记
- 安装mysql5
- B1023. 组个最小数 (20)
- HDU 1565 方格取数(1) (状压DP)
- editPlus注解码
- JAVA中排序函数(有待改进)
- 通过url下载文件
- Java学习笔记之Hibernate-单表hql查询语句