以下の警告を取り除くにはどうすればよいですか?整数変数に文字列サイズ(文字列:: npos)を代入しているときの暗黙の定数変換警告のオーバーフロー
size_t filesize = getFilesize(strLogFileName.c_str());
// Open file
int fd = open(strLogFileName.c_str(), O_RDONLY, 0);
assert(fd != -1);
// Execute mmap
char* mmappedData =
(char *) mmap(NULL, filesize, PROT_READ, MAP_PRIVATE | MAP_POPULATE, fd, 0);
assert(mmappedData != NULL);
string strFileContent(mmappedData);
// warning: overflow in implicit constant conversion
int pos, lpos = string::npos;
この警告を無視するのではなく、この警告を修正するためにコードにどのような変更が必要な場合がありますか?
size_t pos, lpos = std::string::npos;
またはauto
:
警告メッセージは表示されませんか? (https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.htmlを参照) – VolAnd
エラーを示す行はどこですか? –
int pos、lpos =文字列:: npos; – user2256825