このテキストファイルを構造体の配列に読み込もうとしています。ここからテキストが数行あります。テキストファイルを構造体の配列に読み込むC
A|Boston Red Sox|Fenway Park|4 Yawkey Way|Boston|MA|02215|(617) 267-9440|redsox.com
N|St. Louis Cardinals|Busch Stadium|700 Clark Street|St. Louis|MO|63102|(314) 345-9600|cardinals.com
ここに構造体の配列があります。テキストファイルを変更して、変更をテストしやすくするためにリーグとチーム名のみを含むようにしました。問題のlies.Iは、難しいこのシナリオで正しく機能を使用しようとしている初心者であることかかわらはstrncpy()を実装しようとしているのはここ
#define LEN_LINE 80
#define LEN_NAME 30
#define MAX_LINES 60
#define LEAGUE_NAME 5
typedef struct
{
char leagueName[LEAGUE_NAME + 1];
char teamName[LEN_NAME + 1];
} team_t;
です。
FILE * filePtr;
int index, count;
char line[LEN_LINE + 1];
team_t teams[MAX_LINES];
filePtr = fopen("MLBteams.txt", "r");
if(filePtr == NULL)
{
printf("Unable to open file.\n");
}
else
{
index = 0;
while(index<MAX_LINES && fgets(line, LEN_LINE, filePtr))
{
if(2 == sscanf(line,"%s %s", teams[index].leagueName, teams[index].teamName)
)
{
index++;
}
}
fclose(filePtr);
私は混乱したにもかかわらず、他のスレッドを見ました。
分割されます|テキストファイルから別の構造体に変換します。私のコードの問題は、これらの行を読み込むだけです。たとえばBoston Red Soxをチーム[index] .teamNameに読みたい場合は、Bostonのみを保存します。また、リンクのおかげで、私はコードを分解して、それが私を助けるかどうかを調べるつもりです。 –
これは、文字が読み込まれるまでの特別な指定子のようなものです。電話番号や郵便番号などの情報は定数です。文字列として読み込むことができます。どうもありがとうございました。 –
#define LEN_LINEの長さを増やした後、完全に動作しています。 –