把c语言基础搞好,数据结构搞一搞~
网络编程~
不过目前最好玩的需要玩一下,汇编基础需要回头看一下,这个东西要弄清楚:
[ktktkt@Jintao COMMON]$ cat 1.c
main()
{
printf("Hello,World!/n");
}
(gdb) r 1
Starting program: /Learn/c/CProgram/COMMON/1 1
(no debugging symbols found)...(no debugging symbols found)...Hello,World!
Program exited with code 015.
(gdb) disas main
Dump of assembler code for function main:
0x08048348 <main+0>: push %ebp
0x08048349 <main+1>: mov %esp,%ebp
0x0804834b <main+3>: sub $0x8,%esp
0x0804834e <main+6>: and $0xfffffff0,%esp
0x08048351 <main+9>: mov $0x0,%eax
0x08048356 <main+14>: sub %eax,%esp
0x08048358 <main+16>: sub $0xc,%esp
0x0804835b <main+19>: push $0x8048440
0x08048360 <main+24>: call 0x8048288
0x08048365 <main+29>: add $0x10,%esp
0x08048368 <main+32>: leave
0x08048369 <main+33>: ret
0x0804836a <main+34>: nop
0x0804836b <main+35>: nop
End of assembler dump.
(gdb) quit
这是个最简单的~估计还需要研究几天~汇编基础也要回头看看
这个也没搞懂
[ktktkt@Jintao COMMON]$ nm -o 1
1:08049554 A __bss_start
1:080482bc t call_gmon_start
1:08049554 b completed.1
1:0804952c d __CTOR_END__
1:08049528 d __CTOR_LIST__
1:08049454 D __data_start
1:08049454 W data_start
1:080483f8 t __do_global_ctors_aux
1:080482e0 t __do_global_dtors_aux
1:08049458 D __dso_handle
1:08049534 d __DTOR_END__
1:08049530 d __DTOR_LIST__
1:08049460 D _DYNAMIC
1:08049554 A _edata
1:08048450 r __EH_FRAME_BEGIN__
1:08049558 A _end
1:0804841c T _fini
1:08049454 A __fini_array_end
1:08049454 A __fini_array_start
1:08048438 R _fp_hw
1:0804831c t frame_dummy
1:08048450 r __FRAME_END__
1:0804953c D _GLOBAL_OFFSET_TABLE_
1: w __gmon_start__
1:08048250 T _init
1:08049454 A __init_array_end
1:08049454 A __init_array_start
1:0804843c R _IO_stdin_used
1:08049538 d __JCR_END__
1:08049538 d __JCR_LIST__
1: w _Jv_RegisterClasses
1:080483b4 T __libc_csu_fini
1:0804836c T __libc_csu_init
1: U __libc_start_main@@GLIBC_2.0
1:08048348 T main
1:0804945c d p.0
1:08049454 A __preinit_array_end
1:08049454 A __preinit_array_start
1: U printf@@GLIBC_2.0
1:08048298 T _start