文字列を再帰的に逆置き

660 ワード

**
今日は文字列を再帰的に逆置きしてみましょう
**
//       ,  if,  \0     ,       ,       ,      。
//        
#include 
#include "stdlib.h"
void reverse_string(char* string)
{
	if ('\0' != *(++string))
		reverse_string(string);
	printf("%c", *(string - 1));
}
int main()
{
	char a[] = "a";
	printf("          ");
	scanf("%s", &a);
	reverse_string(&a[0]);
	printf("
"); system("pause"); return 0; }

ここではスタックの特徴、すなわち先進的なスタックの後出スタックを見て、もう一つのハイライトはポインタの操作を使って、文字列の最初のアドレスのポインタを伝えて、それでは1つの連続したメモリ空間の中でポインタを加減することができて、その意味は、加減1の意味は1つの要素をスキップすることができます.