C言語の事で聞きたいのですが、Visual Studio 2019を使っていて、
#include<stdio.h>
int main(void) {
char suuji, moji;
printf("1つの数字とアルファベット一文字を入力してください。\n");
scanf("%d", &suuji);
rewind(stdin);
scanf("%c", &moji);
printf("数値は%dで、文字は%cです。\n", suuji, moji);
return 0;
}
と打つと「Run-Time Check Failure #2 - Stack around the variable 'suuji' was corrupted.」とエラーが出ており、
変数をintに変えるとエラーが出ないです。
なぜ、charはエラーが出るのでしょうか?
また、型 SEHException の例外が発生しました。これは拡張機能が原因である可能性があります。[ログ ファイルを開く]とも出ています。
初歩的なものですが、お教えしていただくと嬉しいです。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13247803923
https://teratail.com/help#posted-otherservice
「やむを得ず複数のサイトに質問を投稿された場合は、質問内容にマルチポストをする理由を書き、他のサイトの投稿へのリンクを貼ってください。また、解決した際には必ずteratail及びすべての投稿に解決した旨と、どのように解決したかを記載してください。」
とあります。対応してください。
こう指摘すると、容易に削除できる知恵袋側の投稿を削除して済ます人もいますが、すでにあちらにも回答がついています。質問を削除することは、回答者に対して失礼に当たる行為になるかと思いますので削除で済まされないほうがよろしいかと思います。
ありがとうございます。気を付けます。
気を付けます、じゃなくて直ちにマルチポストを行ったときの処置を実行してください。なにかそれができない/やらない理由でもあるのでしょうか?
知恵袋は解決にすると追記できませんけれど...少なくともできることはやってください。
回答4件
あなたの回答
tips
プレビュー