【发布时间】:2020-02-25 05:05:09
【问题描述】:
..C.. 我试图弄清楚如何访问我的填充数组,该数组使用一个带有另一个函数的结构,稍后我将使用该函数进行排序,但我什至无法打印在我的 main 中填充数组的函数。
我已经在 main 中加载了该函数,该函数可以在 fillArray 函数中进行打印,但是稍后我需要从函数外部访问该数组以进行冒泡排序和二进制搜索。
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define SIZE 100
typedef struct Person
{
char firstname[25];
char lastname[25];
} person;
person list [SIZE];
person loadPeople(char firstname[25],char lastname[25])
{
person p;
strcpy(p.firstname, firstname);
strcpy(p.lastname, lastname);
return p;
}
void fillArray()
{
list[0] = loadPeople("Bob","Baker");
list[1] = loadPeople("Bill","Johnson");
list[2] = loadPeople("John","Finmeister");
list[3] = loadPeople("Jennifer","Ratblaster");
list[4] = loadPeople("Shaun","Gares");
list[5] = loadPeople("Diggy","McDigMaster");
list[6] = loadPeople("Joanne","TheStore");
}
int main(int argc , char *argv[])
{
printf("First homie's name is: %s %s\n",list[0].firstname,list[0].lastname);
return 0;
}
我只想从从 fillArray 调用的 main 打印,但现在它只打印:
第一个朋友的名字是:
就是这样
【问题讨论】:
-
在尝试从数组中读取数据之前,您需要调用
fillArray()。 -
您对 main() 的定义无效。