1
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

4

2 回答 2

1

该函数在找到字符串的位置strstr()停止并返回第一个字符。因此,如果查找,它将返回一个指向第一个 ' ' 的指针,该指针紧随其后的是一个 ' '。如果它遇到一个 ' ' 后跟一个不是 ' ' 的东西,它会忽略这个 ' '。这些函数只会在找到所需的字符串或遇到 NUL ' ' in时停止搜索,标记字符串的结尾。 str1str2str2 = "\r\n";\r\n\r\n\r\0str1

如果您正在寻找字符集中的第一个字符"\r\n",那么您需要查看strspn()and/orstrcspn()函数。

于 2011-04-07T22:43:46.920 回答
1

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

于 2011-04-07T22:44:34.673 回答