아래 첨자 조작을 사용하지 않고 문자열 회문 판단을 실현하다

1128 단어 회문판단
제목과 같이 코드를 붙이고 코드는 VS2008을 통해 컴파일합니다
#include <iostream>
#include <string>

/* judging a string is a palindrome or not*/
int judge_palindrome(const char* str=NULL)
{
    if (str==NULL)
    {
        return -1;
    }
    char* p2str_front=const_cast<char*>(str);//data type adapt 
    char* p2str_back=const_cast<char*>(str);
    while (*p2str_back++!='\0'){}
    p2str_back-=2;

    while (p2str_back > p2str_front)
    {
        if (*p2str_back!=*p2str_front)
        {
            puts("not palindrome
"); return 0; } p2str_front++; p2str_back--; } puts("is palindrome
"); return 1; } int main(void) { char* p2char = "abcba"; std::cout<<judge_palindrome(p2char)<<std::endl; system("pause"); return 0; }

좋은 웹페이지 즐겨찾기