3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

(謎解決)warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいま す。データの損失を 防ぐために、ファイルを Unicode 形式で保存してください。

Last updated at Posted at 2023-02-19

utf-8で保存しているはずなのに...

ファイルはutf-8のはずなのにこのwarning C4819がうるさい。いろいろ調べていった結果コメントに含まれる日本語が原因なことがあるらしい。ということで、コメントの削除とコンパイルを繰り返してどの文字が原因かを二分探索した結果、文字数が多くなるとこの警告がでてくることが分かった。

環境情報

  • Windows11
  • NVCC
  • Microsoft Visual Studio 2022

エラーがでるソースコード。

hellowworld.cu
#include <iostream>

int main(){
    //あああああああああああああああ
    std::cout << "Hello, World" << std::endl;
}
helloworld.cu
helloworld.cu(1): warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいま
す。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
helloworld.cu(1): warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいま
す。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
   ライブラリ a.lib とオブジェクト a.exp を作成中

警告がでないプログラム。

helloworld.cu
#include <iostream>

int main(){
    //ああああああああああああああ
    std::cout << "Hello, World" << std::endl;
}
helloworld.cu
   ライブラリ a.lib とオブジェクト a.exp を作成中

変更点はコメントの"あ"を1文字削除しただけ。ワケガワカラナイ...

まとめ

コメントの文字数を減らすとなくなるかも??

追記

visual studioでutf-8 (BOM付き)を選択することで解決できました。

3
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?