设k为记录字符串长度的变量,初值为0。用for 循环实现,当循环开始时,指针p 指向字符串中的第一个字符,判断该字符是否为"0' (字符串结束标志),如果不是则k++, p++ (p指向下一个字符)。如果该字符为^0',则循环结束,输出k值。
时间: 2024-02-03 21:13:31 浏览: 44
计算字符串的长度函数
可以参考以下代码实现:
```
char* str = "abcd1234"; // 假设字符串为 abcd1234
int k = 0;
char* p = str; // 指针p指向字符串的第一个字符
for (; *p != '\0'; p++) { // 循环判断字符是否为'\0'
if (*p != '0') { // 如果不是'\0',k加1
k++;
} else { // 如果是'\0',跳出循环
break;
}
}
printf("字符串长度为:%d", k); // 输出字符串长度k
```
解释一下代码:
1. 首先定义一个字符串`str`和一个记录长度的变量`k`,并将指针`p`指向字符串的第一个字符。
2. 在for循环中,判断指针`p`指向的字符是否为字符串结束标志`\0`。如果不是,则判断该字符是否为`0`,如果不是,`k`加1,指针`p`指向下一个字符。
3. 如果指针`p`指向的字符是`0`,说明字符串已经结束,跳出循环。
4. 最后输出字符串长度`k`即可。
注意:上面的代码中,我们使用了指针的方式来遍历字符串。`*p`表示指针`p`所指向的字符。因为字符串是以`\0`结尾的,所以我们可以通过判断指针`p`所指向的字符是否为`\0`来判断字符串是否结束。
阅读全文