Как искать косую черту, используя библиотечную функцию strrchr в C ++? - PullRequest
1 голос
/ 17 января 2012

По какой-то причине всякий раз, когда я пытаюсь найти косую черту в конце строки байта (в данном случае base_url, для которой задано значение "www.google.com/"), он не хочет возвращатьсячто это или нет там.Однако, если я изменю base_url на что-то вроде "www.google.com", где m - последний символ, то он найдет его просто отлично.

//in this case, the base_url is "www.google.com/". I also tried to simply put "www.google.com/" in place of the base_url, just in case.

char * last_char_ptr;
last_char_ptr = strrchr(base_url, '/');

if(last_char_ptr == NULL)
{
 cout << "it is null!" << endl;
}
else
{
 cout << *last_char_ptr << endl;
}

Whatsup?

1 Ответ

0 голосов
/ 17 января 2012

Я не знаю, что вы делаете, но это работает для меня:

#include <string.h>
#include <iostream>

int main()
{
    char const* ptr = strrchr("google/", '/');
    std::cout << (ptr? ptr: "<null>") << "\n";
}

То есть печатает косую черту. Если ваш код соответствует it is null!, то до достижения этого кода что-то пошло не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...