gpt4 book ai didi

c++ - 传递结构数组时遇到问题

转载 作者:搜寻专家 更新时间:2023-10-31 01:57:30 25 4
gpt4 key购买 nike

我这辈子都想不出如何在我的程序中传递这个结构数组。谁能伸出援手?现在我在 main 中收到一条错误消息:')' 标记之前的预期主表达式。

标题:

#ifndef HEADER_H_INCLUDED
#define HEADER_H_INCLUDED

#include <iostream>
#include <fstream>
#include <string>
#include <cstring>
#include <iomanip>
#include <cctype>

using namespace std;

struct addressType
{
char streetName[36];
char cityName[21];
char state[3];
char zipcode[6];
char phoneNumber[15];
};

struct contactType
{
char contactName[31];
char birthday[11];
addressType addressInfo;
string typeOfentry;
};

typedef struct contactType contactInfo;

void extern readFile(ifstream&, int&, struct contactType *arrayOfStructs);
void extern sortAlphabetically();
void extern userInput(char&);
void extern output(char&);



#endif // HEADER_H_INCLUDED

主要内容:

#include "header.h"

int main()
{
ifstream inFile;
char response;
int listLength;
struct arrayOfStructs;

inFile.open("AddressBook.txt");

if (!inFile)
{
cout << "Cannot open the input file."
<< endl;
return 1;
}

readFile(inFile, listLength, arrayOfStructs);
sortAlphabetically();
userInput(response);
output(response);

return 0;
}

读取文件:

#include "header.h"

void readFile(ifstream& inFile, int& listLength, struct arrayOfStructs[])
{
contactInfo arrayOfStructs[listLength];
char discard;

inFile >> listLength;
inFile.get(discard);

for (int i = 0; i < listLength; i++)
{
inFile.get(arrayOfStructs[i].contactName, 30);
inFile.get(discard);
inFile.get(arrayOfStructs[i].birthday, 11);
inFile.get(discard);
inFile.get(arrayOfStructs[i].addressInfo.streetName, 36);
inFile.get(discard);
inFile.get(arrayOfStructs[i].addressInfo.cityName, 21);
inFile.get(discard);
inFile.get(arrayOfStructs[i].addressInfo.state, 3);
inFile.get(discard);
inFile.get(arrayOfStructs[i].addressInfo.zipcode, 6);
inFile.get(discard);
inFile.get(arrayOfStructs[i].addressInfo.phoneNumber, 15);
inFile.get(discard);
inFile >> arrayOfStructs[i].typeOfentry;
inFile.get(discard);
}
}

最佳答案

你在哪里:

struct arrayOfStructs;

你需要:

struct contactType arrayOfStructs[200]; // assuming you want 200 structs 

关于c++ - 传递结构数组时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5526415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com