Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 什么是sizeof(myArray)?_C - Fatal编程技术网

C 什么是sizeof(myArray)?

C 什么是sizeof(myArray)?,c,C,考虑以下类型定义和变量定义: typedef char x[10]; x myArray[5]; 尺寸是50,但我不知道为什么?假设一个字符占用1个字节。 请解释答案?typedef char x[10];将新类型x定义为10个字符的数组。所以,myArray是一个5 x的数组,这是一个10个字符的数组。 即myArray实际上是char[5][10]类型;由5个元素组成的数组,其中每个元素是由10个字符组成的数组。 因此,sizeofmyArray将返回50。typedef char x

考虑以下类型定义和变量定义:

typedef char x[10];  
x myArray[5];
尺寸是50,但我不知道为什么?假设一个字符占用1个字节。 请解释答案?

typedef char x[10];将新类型x定义为10个字符的数组。所以,myArray是一个5 x的数组,这是一个10个字符的数组。 即myArray实际上是char[5][10]类型;由5个元素组成的数组,其中每个元素是由10个字符组成的数组。 因此,sizeofmyArray将返回50。

typedef char x[10];将新类型x定义为10个字符的数组。所以,myArray是一个5 x的数组,这是一个10个字符的数组。 即myArray实际上是char[5][10]类型;由5个元素组成的数组,其中每个元素是由10个字符组成的数组。
因此,sizeofmyArray将返回50。

当答案似乎显而易见时,很难解释任何事情。根本无法确定要关注哪些具体细节

您声明了一个typename x,它代表类型char[10]。这种型号有10号

然后声明了一个对象myArray,它由5个类型为x的元素组成。显然,myArray的大小将是50,即5*10

就这些


如果这不是一个充分的解释,你必须首先解释到底是什么导致了混乱。

当答案似乎显而易见时,很难解释任何事情。根本无法确定要关注哪些具体细节

您声明了一个typename x,它代表类型char[10]。这种型号有10号

然后声明了一个对象myArray,它由5个类型为x的元素组成。显然,myArray的大小将是50,即5*10

就这些


如果这不是一个充分的解释,你必须首先解释到底是什么导致了混乱。

请你解释一下这个过程中到底发生了什么?@user3756648:他说了。myArray是一个包含五个x的数组,每个x是一个包含10个字符的数组,总大小为50。@user3756648:让我们从另一个角度看它;到目前为止,你还不明白什么?@LightnessRacesinOrbit我很好奇第一行发生了什么。如果我在第二行写x c='z',@user3756648你不能这样做。x是长度为10的字符数组的typedef。请您解释一下这个过程中到底发生了什么事情好吗?@user3756648:他做了。myArray是一个包含五个x的数组,每个x是一个包含10个字符的数组,总大小为50。@user3756648:让我们从另一个角度看它;到目前为止,你还不明白什么?@LightnessRacesinOrbit我很好奇第一行发生了什么。如果我在第二行写x c='z',@user3756648你不能这样做。x是长度为10的字符数组的typedef。呃,5乘以10等于50。。。你期望什么?呃,5乘以10等于50。。。你期待什么?这是myArray[5][10]或[10][5]。@user3756648:我不确定我是否理解你的意思。这是个问题吗?是myArray[5][10]还是[10][5]。是myArray[5][10]还是[10][5]。@user3756648:我不确定我是否理解你的意思。这是一个问题吗?是myArray[5][10]还是[10][5]。