基本的にユーザーが「Enter」を押してから何かをするのを待つ関数を書いています。テスト時に機能することがわかったのは次のとおりです。
#include <stdio.h>
int main()
{
int x = getc(stdin);
if (x == '\n') {
printf("carriage return");
printf("\n");
}
else {
printf("missed it");
printf("\n");
}
}
私が持っている質問と、私が最初に試みたのは実行することでした:if (x == '\r')
しかし、テストでは、プログラムは私がエンターを押したことをキャッチしませんでした. は'\n'
、コンソールからエンターを押すことに対応しているようです。誰かが違いを説明できますか?また、確認のため、 と書くとif... == "\n"
文字列リテラル?つまり、ユーザーは文字通り"\n"
コンソールから入力する必要がありますよね?