※ ChatGPTを利用し、要約された質問です(原文:文字列)
C言語の文字列反転プログラムで特定の文字数でエラーウィンドウが表示される原因と解決法
このQ&Aのポイント
C言語で文字列を反転させるプログラムを作成しています。しかし、文字数が10文字の場合にエラーウィンドウが表示されます。このエラーの原因と解決法を教えてください。
C言語の文字列反転プログラムで10文字の文字列を入力するとエラーが発生します。エラーメッセージによると、問題が発生したためプログラムが終了します。このエラーの原因と、10文字の文字列でも正常に動作させるための解決法を教えてください。
C言語で文字列を反転させるプログラムを作成していますが、文字数が10文字だけエラーウィンドウが表示されます。どうすればこのエラーを解決できるでしょうか?
C言語の勉強をしてて、文字列を反転させる以下のようなプログラムを書いてみました。
#include <stdio.h>
#include <string.h>
void str_reverse(char s[])
{
int i,l=strlen(s);
char *r;
for(i=0;i<l;i++){
r[i]=s[l-i-1];
}
for(i=0;i<l;i++) s[i]=r[i];
return;
}
int main()
{
char s[100];
scanf("%s",&s);
str_reverse(s);
printf("%s",s);
return 0;
}
実行してみると基本的にうまくいくのですが、文字を10文字入力した時だけ
「問題が発生したため、○○.exeを終了します。…」
というエラーウィンドウが出てきてしまいます。
どなか原因と解決法を教えてください。
お礼
解決しました!! ありがとうございます!!