0.isalnum(函数)
①功能:检查一个字符是否是字母或数字
字母:
形如abced
或者ABCDE
数字:
形如121243
②格式
int isalnum( int ch )
③返回值
若字符为字母、数字。 那就返回非0数字
否则就返回0
来吧!!!展示!!!!
#include<stdio.h>
#include<ctype.h>
int main()
{
int arr[10] = { 0,1,2,3,4,5,6,7,8,9 };
char arr1[10] = "abcdef";
char arr2[10] = "ASBCEDG";
char arr3[10] = "abdFER";
int ret1 = isalnum(arr);
int ret2 = isalnum(arr1);
int ret3 = isalnum(arr2);
int ret4 = isalnum(arr3);
printf("%d\n", ret1);
printf("%d\n", ret2);
printf("%d\n", ret3);
printf("%d\n", ret4);
return 0;
}
哦吼,不是想象的那样。
其实这个函数,只能一个一个字符来判断。
再来!展示!!
我就不信这个邪,我就是要搞整个数组!那我们来开动脑筋
#include<stdio.h>
#include<ctype.h>
#include<string.h>
void print_isalnum(int sz,char* arr)
{
int i = 0;
for (i = 0;i <sz;i++)
{
printf("%d", isalnum(arr[i]));
}
printf("\n");
}
int main()
{
//int arr[10] = { 0,1,2,3,4,5,6,7,8,9 };
char arr1[10] = "abcdef";
char arr2[10] = "ASBCEDG";
char arr3[10] = "abdFER";
//int sz = sizeof(arr) / sizeof(arr[0]);
int len1 = strlen(arr1);
int len2 = strlen(arr2);
int len3 = strlen(arr3);
//print_isalnum(sz, (void*)arr);
print_isalnum(len1, arr1);
print_isalnum(len2, arr2);
print_isalnum(len3, arr3);
return 0;
}
缺陷在我灰色部分,如果可以,你可以自己做出适当修改,让它可以同时兼容int 和char类型。