关于判断字符串为空的有关问题
关于判断字符串为空的问题
一个串 "aaa/bbb/ /ccc "
想用strtok把aaa,bbb,ccc,都取出来但不取中间的空格,请问判断语句该如何写?
strlen(p) != 0, p[0] != '\0 ', p[0] != 0都试过了,不行
谢谢
------解决方案--------------------
#include "vector "
#include "string "
using namespace std;
bool is_space(const char str[])
{
for (size_t i = 0; i < strlen(str); ++i)
if (str[i] != ' ' && str[i] != '\t ')
return false;
return true;
}
int main()
{
char src[] = "aaa/bbb/ /ccc ";
vector <string> dst;
char* p = strtok(src, '/ ');
while (p)
{
if (!is_space(p))
dst.push_back(p);
p = strtok(0, '/ ');
}
}
一个串 "aaa/bbb/ /ccc "
想用strtok把aaa,bbb,ccc,都取出来但不取中间的空格,请问判断语句该如何写?
strlen(p) != 0, p[0] != '\0 ', p[0] != 0都试过了,不行
谢谢
------解决方案--------------------
#include "vector "
#include "string "
using namespace std;
bool is_space(const char str[])
{
for (size_t i = 0; i < strlen(str); ++i)
if (str[i] != ' ' && str[i] != '\t ')
return false;
return true;
}
int main()
{
char src[] = "aaa/bbb/ /ccc ";
vector <string> dst;
char* p = strtok(src, '/ ');
while (p)
{
if (!is_space(p))
dst.push_back(p);
p = strtok(0, '/ ');
}
}