3 回答

TA貢獻(xiàn)1817條經(jīng)驗(yàn) 獲得超6個(gè)贊
執(zhí)行摘要:
int a[17];size_t n = sizeof(a)/sizeof(a[0]);
全文答覆:
sizeof
int a[17];size_t n = sizeof(a);
int a[17];size_t n = sizeof(a) / sizeof(int);
a
sizeof(int)
sizeof(a[0])
int a[17];size_t n = sizeof(a) / sizeof(a[0]);
#define NELEMS(x) (sizeof(x) / sizeof((x)[0]))int a[17];size_t n = NELEMS(a);

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超7個(gè)贊
sizeof
sizeof
size_t size
#include <stdio.h>#include <stdlib.h>void printSizeOf(int intArray[]);void printLength(int intArray[]);int main(int argc, char* argv[]){ int array[] = { 0, 1, 2, 3, 4, 5, 6 }; printf("sizeof of array: %d\n", (int) sizeof(array)); printSizeOf(array); printf("Length of array: %d\n", (int)( sizeof(array) / sizeof(array[0]) )); printLength(array);}void printSizeOf(int intArray[]){ printf("sizeof of parameter: %d\n", (int) sizeof(intArray));}void printLength(int intArray[]){ printf("Length of parameter: %d\n", (int)( sizeof(intArray) / sizeof(intArray[0]) ));}
sizeof of array: 28sizeof of parameter: 8Length of array: 7Length of parameter: 2
sizeof of array: 28sizeof of parameter: 4Length of array: 7Length of parameter: 1

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超9個(gè)贊
sizeof
int a[10];int* p = a;assert(sizeof(a) / sizeof(a[0]) == 10);assert(sizeof(p) == sizeof(int*));assert(sizeof(*p) == sizeof(int));
- 3 回答
- 0 關(guān)注
- 1044 瀏覽
添加回答
舉報(bào)