首页 > 代码库 > sizeof与数组长度

sizeof与数组长度

代码:

#include <stdio.h>
#include <stdlib.h>

#define LENGTH 10

void func(int arr[]);

int main(void) {

	int arr[LENGTH] = { 0 };

	// sizeof 数组名:整个数组大小
	// sizeof 数组名[0]:数组第一个元素大小
	size_t length = sizeof arr / sizeof arr[0];

	printf(length == LENGTH ? "Equal" : "Not Equal");

	printf("\n");

	func(arr);

	return EXIT_SUCCESS;
}

void func(int arr[]) {

	// arr是一个指向int类型的指针
	printf(sizeof arr / sizeof arr[0] == LENGTH ? "Equal" : "Not Equal");

	printf("\n");
}

输出:

Equal
Not Equal


sizeof与数组长度