strcspn
来自cppreference.com
| 在标头 <string.h> 定义
|
||
| |
||
返回 dest 所指向的空终止字节字符串的最大起始段长度,该段只由 src 所指向的空终止字节字符串中找不到的字符组成。
若 dest 或 src 不是指向空终止字节字符串的指针,则行为未定义。
参数
| dest | - | 指向要分析的空终止字节字符串的指针 |
| src | - | 指向含有要搜索字符的空终止字节字符串的指针 |
返回值
仅由 src 所指向的空终止字节字符串中找不到的字符组成的最大起始段长度。
注意
函数名代表“补集段 (complementary span)”,因为函数搜索 src 中找不到的字符,即 src 的补集。
示例
Run this code
#include <string.h>
#include <stdio.h>
int main(void)
{
const char *string = "abcde312$#@";
const char *invalid = "*$#";
size_t valid_len = strcspn(string, invalid);
if(valid_len != strlen(string))
printf("'%s' contains invalid chars starting at position %zu\n",
string, valid_len);
}
输出:
'abcde312$#@' contains invalid chars starting at position 8
引用
- C11 标准(ISO/IEC 9899:2011):
- 7.24.5.3 The strcspn function (第 368 页)