strstr()函数和“\ r \ n”

时间:2011-04-07 22:39:30

标签: c++ strstr

const char * strstr ( const char * str1, const char * str2 );
      char * strstr (       char * str1, const char * str2 );

返回指向str1中第一次出现str2的指针,如果str2不是str1的一部分,则返回空指针

让我们说char* str2=new char(5000)是这样声明的,文件中的字符会被读入str2

如果str2包含多个“\r”或“\n”字符,strstr如何工作?它会在点击“\n”或“\r”后停止还是继续?此外,如果它继续,是否有任何方法可以在str2

中的某一点停止该功能

2 个答案:

答案 0 :(得分:1)

strstr()函数停在并返回str1中找到字符串str2的第一个字符。因此,如果查找str2 = "\r\n";,它会返回指向第一个“\r”的指针,紧接着是“\n”。如果遇到“\r”后跟“\n”以外的内容,则会忽略此“\r”。这些函数只会在找到所需字符串时或在\0中遇到NUL“str1”时停止搜索,标记字符串的结尾。

如果您要查找字符集"\r\n"中的第一个字符,则需要查看strspn()和/或strcspn()函数。

答案 1 :(得分:1)

它一直持续到字符串的末尾('\0'