第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

為什么C-Array在傳遞給函數(shù)時(shí)有一個(gè)錯(cuò)誤的size of()值?

為什么C-Array在傳遞給函數(shù)時(shí)有一個(gè)錯(cuò)誤的size of()值?

C C++
冉冉說 2019-07-02 11:20:56
為什么C-Array在傳遞給函數(shù)時(shí)有一個(gè)錯(cuò)誤的size of()值?完整的例子:#include <stdio.h>void test(int arr[]) {     int arrSize = (int)(sizeof(arr) / sizeof(arr[0]));     printf("%d\n", arrSize); // 2 (wrong?!)}int main (int argc, const char * argv[]) {     int point[3] = {50, 30, 12};     int arrSize = (int)(sizeof(point) / sizeof(point[0]));     printf("%d\n", arrSize); // 3 (correct :-) )     test(point);     return 0;}在將其傳遞給函數(shù)之前,size of給出了正確的值。在函數(shù)中的相同數(shù)組上執(zhí)行完全相同的操作會(huì)產(chǎn)生奇怪的結(jié)果。少了一個(gè)元素。為什么?
查看完整描述

3 回答

?
ABOUTYOU

TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個(gè)贊

因?yàn)閿?shù)組是腐朽作為函數(shù)參數(shù)傳遞給指針,因此sizeof分別為32位和64位平臺(tái)提供4和8。


查看完整回答
反對(duì) 回復(fù) 2019-07-02
?
ibeautiful

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊

因?yàn)樵贑、C+和Object-C中,函數(shù)實(shí)際上不可能有數(shù)組參數(shù)。它們只能有這樣的參數(shù)看起來像數(shù)組參數(shù),但它們不是..在你的例子中,

void test(int arr[])

編譯器看到“有一個(gè)參數(shù)看起來像一個(gè)int數(shù)組”,它用一個(gè)“指針到int”替換這個(gè)參數(shù)。所以你寫的函數(shù)是絕對(duì)的,百分之百,和

void test (int* arr)

因此,在函數(shù)size of(Arr)中,將給出“指針到int”的大小。


查看完整回答
反對(duì) 回復(fù) 2019-07-02
  • 3 回答
  • 0 關(guān)注
  • 560 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)