文字列を C 言語で反転する方法
文字列を反転するには、文字列の文字を反復処理して文字の位置を入れ替えることで、C言語で実装できます。具体的には、次の手順で行います。
- まずは文字列を指すポインタを定義します。
- strlen() 関数を使って文字列の長さ(文字数)を取得し、変数に格納します。
- 2つのポインタを使用します。1つは文字列の先頭、もう1つは末尾を指します。
- 文字列を走査して、2つのポインタの指す文字を入れ替え、2つのポインタが合うまでポインタを真ん中へ寄せていく。
- 最後に、反転された文字列を出力する。
例として、以下のコードを示します。
#include <stdio.h>
#include <string.h>
void reverseString(char *str) {
int len = strlen(str);
char *start = str;
char *end = str + len - 1;
while (start < end) {
char temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
reverseString(str);
printf("反转后的字符串为:%s\n", str);
return 0;
}
このコードでは、reverseString() 関数を使用して文字列を逆転します。main() 関数では、最初にユーザーが入力した文字列を取得し、次に reverseString() 関数を呼び出して文字列を逆転し、最後に結果を出力します。