换一个更简单的
时间: 2023-07-29 11:12:16 浏览: 35
好的,以下是更简单的代码实现,直接遍历字符串,判断每个字符是否为字母或数字,如果不是则将其拼接到新的字符串中。
```c
#include <stdio.h>
#include <string.h>
void extract_non_alnum(char *str, char *result) {
int i, j;
int len = strlen(str);
for (i = 0, j = 0; i < len; i++) {
if ((str[i] < '0' || str[i] > '9') && (str[i] < 'A' || str[i] > 'Z') && (str[i] < 'a' || str[i] > 'z')) {
result[j++] = str[i];
}
}
result[j] = '\0';
}
int main() {
char str[100] = "abc123!@#def456";
char result[100];
extract_non_alnum(str, result);
printf("Original string: %s\n", str);
printf("Extracted string: %s\n", result);
return 0;
}
```
输出结果与之前相同:
```
Original string: abc123!@#def456
Extracted string: !@#
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)