-
gdb 下s用于進(jìn)入函數(shù)中,查看全部
-
1.用gdb調(diào)試工具,首先加參數(shù)-g編譯,這樣才能調(diào)試。其次,運(yùn)行程序時(shí)前面加gdb,格式: gdb ./*.out .。l用來(lái)顯示代碼。查看全部
-
void change (int *a,int *b) { int tmp=*a; *a=*b; b= }查看全部
-
定義指針變量時(shí)在變量類(lèi)型和變量名中間加個(gè) *, 指針變量的值本身是一個(gè)地址,在使用指針變量時(shí),如果,在指針變量前加一個(gè)*表示取指針變量的值表示的地址中的內(nèi)容,如果不加*則表示取指針變量的值,就是指針變量存的地址。查看全部
-
聽(tīng)得我根本停不下來(lái)查看全部
-
gdb 神器查看全部
-
char str[] = "hello"; char *str2 = "world"; char str3[10]; scanf("%s", str); // 可以輸入長(zhǎng)度大于6的字符串 str2 = "wise"; //出錯(cuò),不允許. printf("%s\n", str); printf("%s\n", str2); 程序輸入:aaaaaaaaaaaaaaaaaaa 程序輸出: str = aaaaaaaaaaaaaaaaaaaaaaaaa str2 = world str3 = aaaaaaaaa查看全部
-
代碼段中的內(nèi)容是不允許修改的,而堆棧中的內(nèi)容是可以更改的。查看全部
-
數(shù)組的本質(zhì)是指針常量查看全部
-
函數(shù)func int func(int a){return a;} 指向函數(shù)func的函數(shù)指針:pfunc int (*pfunc)(int a) = &func; 使用: int b = (*pfunc)(3); 怎樣判斷一個(gè)指針是否為函數(shù)指針: 形如 type (*p)(T a)[= &b]; 則此時(shí)p就是一個(gè)函數(shù)指針。查看全部
-
靜態(tài)變量、常量和全局變量默認(rèn)存儲(chǔ)在數(shù)據(jù)段中查看全部
-
函數(shù)的棧地址分布: 先調(diào)用的函數(shù)在棧中的地址就越大 變量在代碼段中的地址分布: 先聲明的變量地址越?。ň幾g器優(yōu)化后有所差異,總體來(lái)說(shuō)是這樣的)查看全部
-
gcc -g main.c -o main.out——>編譯成可調(diào)式文件 ——>gdb ./main.out start 開(kāi)始調(diào)試 p——>printf ==>p a(打印a的值) n——>next ==>顯示下一個(gè)需要執(zhí)行的命令 l——>list ==>顯示當(dāng)前文件內(nèi)容 ==>enter ==>繼續(xù)顯示查看全部
-
gcc 編譯器在編譯程序的時(shí)候會(huì)對(duì)代碼進(jìn)行優(yōu)化,它會(huì)將所有類(lèi)型相同的變量聲明放在一起,這樣就產(chǎn)生了我們所寫(xiě)的代碼對(duì)變量的聲明順序與變量在內(nèi)存中存儲(chǔ)的地址順序出現(xiàn)不同的情況。gcc做這樣的優(yōu)化可以加快程序的運(yùn)行。 64位的操作系統(tǒng)指針類(lèi)型變量在內(nèi)存中占8個(gè)字節(jié) 32位的操作系統(tǒng)指針類(lèi)型變量在內(nèi)存中占4個(gè)字節(jié) int類(lèi)型變量占4個(gè)字節(jié)查看全部
-
變量的本質(zhì)就是內(nèi)存 指針的本質(zhì)就是內(nèi)存地址查看全部
舉報(bào)
0/150
提交
取消