c语言strrchr求解
发布网友
发布时间:2023-04-17 15:31
我来回答
共3个回答
热心网友
时间:2023-04-23 02:16
第一句:函数功能:查找一个字符c在另一个字符串str中末次出现的位置(也就是从str的右侧开始查找字符c首次出现的位置),并返回从字符串中的这个位置起,一直到字符串结束的所有字符。如果未能找到指定字符,那么函数将返回NULL。
第二句:判断是否找到了对应的".",找到了pch就不为空,如果为空,说明没找到,输出"#093: BST_TopfieldOpen() - No Tag Connection -> ABORT"并回车换行,函数返回-93给程序接收。
第三句:else语句,将pch字符串的第二个元素设为'\0'也就是字符串终止符,让字符串只有两个元素,"."和"\0",这样查找"."就可以通过字符串终止符来判断了。
程序的目的就是通过查找字符串中的".",并赋值给相应的指针,指向该字符串中"."的位置。
热心网友
时间:2023-04-23 02:17
pch = strrchr(szTagPrefix, '.'); //从后边查找.
if (pch==NULL) { //没找到,输出,返回
printf ("#093: BST_TopfieldOpen() - No Tag Connection -> ABORT\r\n");
return (-93);
} else {
pch++; //找到了, 指针向后移1
*pch = '\0'; //原地截断,相当于原字符串最后一个.后的字符抛弃
热心网友
时间:2023-04-23 02:17
pch = strrchr(szTagPrefix, '.'); //查找‘.’在szTagPrefix字符串最后一次出现的位置,并截取该位置开始的字符串
if (pch==NULL) { // 没有找到,打印一句话并return
printf ("#093: BST_TopfieldOpen() - No Tag Connection -> ABORT\r\n");
return (-93);
} else { //找到了则pch指针加1,并赋值‘\0’,'\0'为字符串结束标记
pch++;
*pch = '\0';