為什麼使用指標變數時一定要申請空間?

2022-08-02 07:06:06 字數 711 閱讀 2309

我們在使用指標時,有時需要用指標指向乙個變數,用指標來對變數進行操作;而有時我們就需要直接定義乙個指標變數,然後用指標變數進行相關操作。針對第二種情況,直接採用以下的方式:

1 #include2

3using

namespace

std;45

struct

teacher6;

910void agechange(teacher **teacher)

1314

intmain()

上面的情況中,直接就崩,原因是什麼呢?

在上面的**中,我們先定義了乙個指標變數,其中的mrliu本身就是乙個指標,而這個指標並沒有指向乙個明確的位址;然後將這個指標放進函式中,該函式的形參取了這個指標的位址,程式進行到這裡就埋下了乙個隱患,這個位址一直都是不明確的;進入到程式中以後,對這個不明確的記憶體空間進行賦值操作,這樣的操作是沒有意義並且不合理的,所以就發生了崩潰。

上面問題的核心在於定義的指標變數是不明確的,那麼我們只要在堆中申請一段空間,那麼就可以編譯通過。

1 #include2

3using

namespace

std;45

struct

teacher6;

910void agechange(teacher **teacher)

1415

intmain()

Docker 為什麼一定要sudo

這個sudo真是煩死人了,每次都要sudosudo,覺得浪費了我大量的時間。但是,當我學習到如何到如何可以不sudo 為什麼要sudo之後,還是覺得sudo好一些吧,於是最後選擇加乙個環境變數,來節約時間。參考文章中給出了幾個非常高水平的處理辦法,我很喜歡,以後來學。1.如何免sudo實現docke...

為什麼規則一定要簡單?

我們生活在各種各樣的規則中,專案中 企業中 社會中,凡是有人的地方就有規則。規則,不論明規則,還是潛規則,都將約束人們的行為。為什麼規則一定要簡單?只有簡單的規則才能體現公正。試想,玩撲克牌,如果撲克牌的規則過於複雜,複雜到多數玩家無法通曉全部規則,還有誰會玩呢?我們把規則搞複雜的目的是什麼呢?是為...

使用Flask Migrate 時一定要謹慎!

謹慎使用flask migrate 謹慎使用flask migrate 謹慎使用flask migrate flask migrate是基於alembic的一款flask運算元據庫外掛程式,可以用來更新資料庫。它的工作步驟分三步 初始化,並記錄該資料庫下的所有資料表。對比修改後的資料表,並生成乙個v...