goto語句

goto 語句 和標籤之間爲什麼不能定義變量

C++的源碼先會轉換成彙編代碼,之後進行彙編和鏈接.那麼這裏就要探討彙編語言了.
在彙編語言中,程序的數據段定義和代碼段定義是分開的,數據段定義(數據段不包含堆棧段)必須在代碼運行前分配完畢.所以,一個函數(在彙編中稱爲過程)的代碼,永遠是在數據段定義後才執行的,goto語句是代碼段內容,不可能出現在數據段中,函數會先把需要的變量定義之後(也就是在數據段定義),纔開始執行代碼,因此無論這個goto在哪裏,總是跳不過變量定義.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章