回答編集履歴

3

ワイド文字を表すのに必要なLが抜けていたため追記

2024/12/27 15:26

投稿

KAKAKASASASA
KAKAKASASASA

スコア4

test CHANGED
@@ -19,7 +19,7 @@
19
19
  int ss[max] = { 0 };
20
20
 
21
21
 
22
- if (_wfopen_s(&file, "float_data.txt", "r, ccs=UTF-8") != 0) {
22
+ if (_wfopen_s(&file, L"float_data.txt", L"r, ccs=UTF-8") != 0) {
23
23
  perror("Error opening file");
24
24
  return 1;
25
25
  }

2

さらなる追記

2024/12/27 15:20

投稿

KAKAKASASASA
KAKAKASASASA

スコア4

test CHANGED
@@ -51,5 +51,6 @@
51
51
  (ファイルの文字コードはUTF-16でしたが、なぜかccs=UTF-16だと動作せず、UTF-8を指定すると正常に動作しました。)
52
52
 
53
53
  また、UTF-16形式のため、char型ではなく広範囲の文字を扱えるwchar_t型を使用しました。
54
+ そのため_wfopen_sやfgetws、wcstolを使用しています。
54
55
  以上の変更により、このプログラムは正常に動作するようになりました。
55
56
 

1

開発環境追記

2024/12/27 15:12

投稿

KAKAKASASASA
KAKAKASASASA

スコア4

test CHANGED
@@ -2,7 +2,7 @@
2
2
  皆さまがご提示くださったプログラムのおかげで、一歩前進し、文字を読み込むことができました。しかし、未初期化の変数が表示され続けるという問題が発生してしまいました。
3
3
  それでも、この問題は最終的に自力で解決することができました。
4
4
 
5
- 以下に解決したプログラムを貼り付けます。
5
+ 以下に解決したプログラムを貼り付けます。(環境はwindows10 Visual Studio2022 )
6
6
 
7
7
 
8
8