我有一个关于C的语义的问题,我想知道为什么决定使数组不同于语言中的任何其他类型的功能。我理解数组和指针在C中是不同的编译时抽象,数组有固定的长度,sizeof为数组返回stride * length。对于指针,它只返回指针本身的宽度。但是,数组不能作为值传递到函数中,也不能从函数直接返回。实际上,我想知道为什么你不能做以下的等价物。out = 0;
for (int i = 0; i <
一些语言使您能够像普通函数一样声明返回数组的函数,如Java: String[] test = new String[]{"hi", "hello"};}
为什么C++不支持像int[] funcarray(){}这样的东西?你可以返回一个数组,但是创建这样一个函数真的很麻烦。另外,我还听说字符串就是char的数组。因此,如果可以在