如何递归完成逆序字符串?

直接进入主题,如何使用递归逆序一个字符串。

#include<stdio.h>
#include<stdlib.h>
#include<assert.h>

void res_sub(char *str)
{
	assert(str != NULL);//断言,确保有效
	if (*str == '\0')//判断,不是尾部,就往下执行
	{
		return;
	}
	res_sub(str + 1);//判断下一个字符是否为空,不断调用自己,直到到了末尾,开始返回输出
	printf("%c", *str);
}

int main()
{
	char *msg = "hello world!";
	res_sub(msg);
	system("pause");
	return 0;
}

当然想要具体了解,你可以把代码放到vs2015下,按F11调试来看。

附上linux下的代码贴图。



猜你喜欢

转载自blog.csdn.net/LeeKitch/article/details/54618895