判断是否为回文

//判断是否为回文——判断用户输入的字符串是否为回文。回文是指正反拼写形式都是一样的词,譬如“racecar”。
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std;

bool IsPlalindromeW(const wchar_t* str)
{
	size_t len = wcslen(str);
	for (int i = 0; i < len; ++i)
	{
		if (str[i] != str[len - i - 1])
			return false;
	}
	return true;
}

bool IsPlalindrome(const char* str)
{
	if (str == NULL)
		return false;
	setlocale(LC_ALL, "chs");
	int len = mbstowcs(NULL, str, NULL);
	if (len <= 0)
		return false;
	wchar_t* dst = new wchar_t[len + 1];
	int change = mbstowcs(dst, str, len + 1);
	bool bRes = IsPlalindromeW(dst);
	delete[] dst;
	setlocale(LC_ALL, "");
	return bRes;
}

int main(int argc, char* argv[])
{
	char* str = "斗鸡山上山鸡斗";
	cout << boolalpha;
	cout << IsPlalindrome(str) << endl;
	system("pause");
	return 0;
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • cocos2dx 2048

    #include "GameScene.h" #include "CardSprite.h" #include "ScoreBoard.h" #include ...

    _gongluck
  • 黑暗的内存管理

    黑暗的内存管理 很多人对 C 语言深恶痛绝,仅仅是因为 C 语言迫使他们在编程中必须手动分配与释放内存,然后通过指针去访问,稍有不慎可能就会导...

    _gongluck
  • 逆转字符串

    逆转字符串——输入一个字符串,将其逆转并输出 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #inc...

    _gongluck
  • 浙大版《C语言程序设计(第3版)》题目集 习题6-8 统计一行文本的单词个数

    本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。

    C you again 的博客
  • 计算几何笔记

    若向量$(x, y)$旋转角度为$a$,则旋转后的向量为$(xcosa - ysina, y cosa + xsina)$

    attack
  • Linux 宝塔面板免费版开启 waf 防火墙的方法

    宝塔面板在 6.x 之前的版本中自带了 Nginx 防火墙功能(Nginx管理 > 过滤器),到了 6.x 之后,,,为了推行收费版的防火墙插件,宝塔官方把这个...

    C4rpeDime
  • 不用 Spring Security 可否?试试这个小而美的安全框架

    在一款应用的整个生命周期,我们都会谈及该应用的数据安全问题。用户的合法性与数据的可见性是数据安全中非常重要的一部分。但是,一方面,不同的应用对于数据的合法性和可...

    乱敲代码
  • 服务器架设笔记——搭建用户注册和验证功能

            之前介绍的Apache Httpd相关内容,都是些零散的知识点。而实际运用中,我们要根据不同的业务,将这些知识点连接起来以形成各种组合,来满足我...

    方亮
  • 不用 Spring Security 可否?试试这个小而美的安全框架

    在一款应用的整个生命周期,我们都会谈及该应用的数据安全问题。用户的合法性与数据的可见性是数据安全中非常重要的一部分。但是,一方面,不同的应用对于数据的合法性和可...

    用户4172423
  • 知乎6000+赞推荐:程序员常用的10多个技术网站

    作为一个每天都泡在电脑面前的程序员来说,选对一些学习、交流的地方就显得尤为重要--可以在第一时间解决我们的问题,可以立马Get到一门新技术的教程,可以分享我们学...

    养码场

扫码关注云+社区

领取腾讯云代金券