私は C プログラミング言語を使用しており、バイナリ File のすべての行の最初の文字列を読み取ろうとしています。
バイナリ ファイル内のデータの例 (表示するために txt ファイルに書き込みました)
Iliya Iliya Vaitzman 16.00 イスラエル 1 0 1
行の最初の Iliya まで読み上げたい (または、行の最初の単語が何であれ)。
次のコードを試していますが、彼に与えた文字列変数に NULL を返し続けます
次のコード:
FILE* ptrMyFile;
char usernameRecieved[31];
boolean isExist = FALSE;
ptrMyFile = fopen(USERS_CRED_FILENAME, "a+b");
if (ptrMyFile)
{
while (!feof(ptrMyFile) && !isExist)
{
fread(usernameRecieved, 1, 1, ptrMyFile);
if (!strcmp(userName, usernameRecieved))
{
isExist = TRUE;
}
}
}
else
{
printf("An error has encountered, Please try again\n");
}
return isExist;
typedef と #define をブール変数に使用しました (0 は false、それ以外はすべて true (TRUE は true、FALSE は false))。
usernameRecieved は fread から NULL を取得し続けます。
これを解決するにはどうすればよいですか?