4.1
查看strindex()的实现,该功能和strstr()类似, 都是查找子串的位置
int strindex(char s[], char t[]) {int idx, i, j;for (idx = 0; s[idx] != '\0'; idx++) {for (i = idx, j = 0; t[j] != '\0' && s[i] == t[j]; i++, j++);if (t[j] == '\0' && j > 0)return idx;}return -1; }
理解上述代码:
1. 如果s短,s[i]是否会越界?不会,因为第二层循环中,s[i]=='\0'时,循环肯定会结束
2. if判断中,j>0 什么作用?我认为当 t[] = '\0'时,起到检查作用