C C 函式呼叫 值傳遞1

2021-07-05 01:25:34 字數 719 閱讀 5666

char* getmem(void) 

void test(void)

a. hello b.無輸出 c.hello0world d.不確定

答案:d

解析:在getmen函式中,陣列p是乙個區域性變數,儲存在系統記憶體的棧(stack)區。在getmem函式呼叫結束時候,系統會自動銷毀陣列p。函式getmem返回的是char *型別,賦值給char *型別的變數s,但是由於在getmem函式呼叫結束時候,系統會自動銷毀陣列p中的內容,所以,雖然s指向的是p的位址,但是p中的值被銷毀,所以s輸出為隨機值。

程式執行結果:

題目2與題目1不同的是,p由陣列變為了指標。由於指標所指向的內容」hello world「放在文字常量區,在函式呼叫結束的時候不會被銷毀,所以程式正確的執行結果是,輸出hello world。

Python呼叫c c 函式(1)

python開發效率高,執行效率低。而c c 恰恰相反。因此在python指令碼中呼叫c c 的庫,對python進行擴充套件,是很有必要的。使用python api,需要安裝python dev。test.cpp檔案如下 include 6 python.h 包含python的標頭檔案 1 c c...

C 函式呼叫之 值傳遞 指標傳遞 引用傳遞

1 值傳遞 形參時實參的拷貝,改變函式形參並不影響函式外部的實參,這是最常用的一種傳遞方式,也是最簡單的一種傳遞方式。只需要傳遞引數,返回值是return考慮的 使用值傳遞這種方式,呼叫函式不對實參進行操作,也就是說,即使形參的值發生改變,實參的值也完全不受影響。2 指標傳遞 指標傳遞其實是值傳遞的...

C 函式呼叫之 值傳遞 指標傳遞 引用傳遞

1 值傳遞 形參時實參的拷貝,改變函式形參並不影響函式外部的實參,這是最常用的一種傳遞方式,也是最簡單的一種傳遞方式。只需要傳遞引數,返回值是return考慮的 使用值傳遞這種方式,呼叫函式不對實參進行操作,也就是說,即使形參的值發生改變,實參的值也完全不受影響。2 指標傳遞 指標傳遞其實是值傳遞的...