我想将一些数组结构传递给函数,以便可以按年龄重新排序。我不确定如何输入。
typedef structure {
char name[100];
int age;
}person;
person function ( How do I pass them? )
{
reordering;
}
int main(){
printf("How many ppl?");
...
person *v[n]; ( I decided to not use dynamic allocation for simplicity of example
for(i=0;i<n;i++)
{
// Names and age reading using arrays
v[i].name
v[i].age
}
function ( ??? );
我想按年龄重新排序。如何将数组作为指针传递给将根据人的年龄重新排序的函数?
答案 0 :(得分:0)
例如
void function(type* array)
{
// codes
}
void func_call()
{
type array_to_pass[];
function(array_to_pass);
}
这将起作用,因为数组将衰减为要键入的指针。 请注意,您不再知道阵列的大小。您可能需要传递数组的大小。