正しい方向に向けられることを探しているだけです:
Cプログラムへの標準入力があります。一度に各行を取り込み、char[]に格納しました。
char []ができたので、最後の単語(スペースで区切られていると仮定)を取得して小文字に変換するにはどうすればよいですか?
私はこれを試しましたが、プログラムがハングします:
while (sscanf(line, "%s", word) == 1)
printf("%s\n", word);
提案されたものを取り入れてこれを思いついたのですが、これを行うためのより効率的な方法はありますか?
char* last = strrchr(line, ' ')+1;
while (*last != '\0'){
*last = tolower(*last);
putchar((int)*last);
last++;
}