正在计算一个数组的元素数量...仅通过声明 return 类型就可以引用其索引值?什么?如何?为什么? (C++)
Calculating an array's number of elements... Able to refer to its index values by just stating the return type? What? How? Why? (C++)
我正在学习如何计算数组中元素的大小和数量,遇到了一个问题。在教程中我看到
我们可以按如下方式计算数组中元素的数量...
int array_variable [] = {1, 5, 8, 10};
int array_variable_number_of_elements = sizeof(array_variable) / sizeof (int);
我知道并完全理解为什么你可以替换
sizeof (int);
和
sizeof (array_variable[0]); // or use any index value from the array_variable
视频似乎暗示只使用 int 是一种很好的做法,但我不明白。计算机显然不是通灵的,int 只是一种数据类型。当同一个函数中有两个int类型的数组时会发生什么?为什么这行得通?这是否有效,因为它与以下内容在同一行?
int array_variable_number_of_elements = sizeof(array_variable)
谢谢:)
第二种方法更好更通用,当您需要将数组类型 int
更改为 char
时,您根本不需要编辑第二行。
char array_variable [] = {'a', 'b', 'c' }; //changed this line only
int array_variable_number_of_elements = sizeof(array_variable) / sizeof
(array_variable[0]);
回答您的以下评论;
上面几行你可以像下面这样解释;
int array_variable = {1, 2, 3, 4, 5 };
int array_variable_number_of_elements = sizeof(array_variable) / sizeof ( int);
// ^^^^^^^^^ ^^^^ ^^^
// array_variable_number_of_elements = 20 / 4 ; // 20 / 4 = 5
总数组 size
在我的系统中是 20 个字节,int
的大小是 4 个字节;
数组中的元素总数为 5;
我正在学习如何计算数组中元素的大小和数量,遇到了一个问题。在教程中我看到 我们可以按如下方式计算数组中元素的数量...
int array_variable [] = {1, 5, 8, 10};
int array_variable_number_of_elements = sizeof(array_variable) / sizeof (int);
我知道并完全理解为什么你可以替换
sizeof (int);
和
sizeof (array_variable[0]); // or use any index value from the array_variable
视频似乎暗示只使用 int 是一种很好的做法,但我不明白。计算机显然不是通灵的,int 只是一种数据类型。当同一个函数中有两个int类型的数组时会发生什么?为什么这行得通?这是否有效,因为它与以下内容在同一行?
int array_variable_number_of_elements = sizeof(array_variable)
谢谢:)
第二种方法更好更通用,当您需要将数组类型 int
更改为 char
时,您根本不需要编辑第二行。
char array_variable [] = {'a', 'b', 'c' }; //changed this line only
int array_variable_number_of_elements = sizeof(array_variable) / sizeof
(array_variable[0]);
回答您的以下评论;
上面几行你可以像下面这样解释;
int array_variable = {1, 2, 3, 4, 5 };
int array_variable_number_of_elements = sizeof(array_variable) / sizeof ( int);
// ^^^^^^^^^ ^^^^ ^^^
// array_variable_number_of_elements = 20 / 4 ; // 20 / 4 = 5
总数组 size
在我的系统中是 20 个字节,int
的大小是 4 个字节;
数组中的元素总数为 5;