ここで何が欠けていますか? それは私を夢中にさせています!
const char*を返す関数があります
const char* Notation() const
{
char s[10];
int x=5;
sprintf(s, "%d", x);
return s;
}
今、コードの別の部分で私はこれをやっています:
.....
.....
char str[50];
sprintf(str, "%s", Notation());
.....
.....
ただし、strは変更されません。
代わりにこれを行う場合:
.....
.....
char str[50];
str[0]=0;
strcat(str, Notation());
.....
.....
strが正しく設定されています。
なぜsprintfが期待どおりに動作しないのか疑問に思っています...