2017年9月29日金曜日

warning: deprecated conversion from string constant to ‘char*’ を回避

ロベールC++の1部40章で、strを代入するとエラーが出ます。

hello.cpp:21:36: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
     DispLength("ホメホメール");
string constantの部分に問題があるようで。

int strlen(const char *str)
// int strlen(char* str)
{
  int i;
  for(i = 0; str[i]; i++);
  return i;
}
void DispLength(const char *str)
// void DispLength(char* str)
{
    printf("文字列「%s」の長さは %d バイトです。\n", str, strlen(str));
}

と変えれば良いようです。

参考:

https://stackoverflow.com/questions/59670/how-to-get-rid-of-deprecated-conversion-from-string-constant-to-char-warnin


0 件のコメント:

コメントを投稿