贊助廠商

娛樂城推薦

首頁

刊登資訊

  • 刊登者:匿名
  • 時間:2021-06-06 14:40:11

尚未解答C/C++- ld 連結 object file

C/C++- ld 連結 object file

我在閱讀一本書,裡面給一個靜態連結的範例

a.c:
extern int shared;
int main() {
int a = 100;
swap(&a, &shared);
return 0;
}

b.c:
int shared = 1;
void swap(int *a, int *b){
*a ^= *b ^= *a ^= *b;
}

編譯指令:
gcc -c a.c -fno-stack-protector
gcc -c b.c -fno-stack-protector

連結指令:
ld a.o b.o -e main -o ab

執行時:
./ab 出現 segmentation fault(core dump)

請問有人知道這甚麼狀況嗎? 謝謝

我GCC 版本 gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
ld 版本 GNU ld (GNU Binutils for Ubuntu) 2.34

--

0個答案 C/C++- ld 連結 object file

其他問題

友站連結