在C语言中,怎么判断一个变量是int型的还是char型的? 20
比如在函数调用时,如果函数的参数是int的,可是却调用时实参却是char的,怎么判断其合法性呢?...
比如在函数调用时,如果函数的参数是int的,可是却调用时实参却是char的,怎么判断其合法性呢?
展开
7个回答
展开全部
用sizeof操作符在运行时来判定变量字长是错误的。因为sizeof()的值在编译时就确定了。上面老兄的函数永远只能返回-1
其实在C语言中用不着去判断变量类型。如果再调用函数时传入了不匹配的类型,编译器会给出警告。
其实在C语言中用不着去判断变量类型。如果再调用函数时传入了不匹配的类型,编译器会给出警告。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
假设函数形式为:int function(int n);
方法1:判断实参字长:
int function(int n) {
int length = sizeof(n); //取n的字长
if ( length != 4 ) //判断n是否为32位整数
return -1; //不是整数返回-1;
else {
...
}
}
方法1:判断实参字长:
int function(int n) {
int length = sizeof(n); //取n的字长
if ( length != 4 ) //判断n是否为32位整数
return -1; //不是整数返回-1;
else {
...
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在C语言里有个函数可以判断输入的是不是数字或者字母
int isalpha(int ch);
检查ch是否是字母,是字母返回1.不是则返回0,
去网上下个C语言函数看看吧
int isalpha(int ch);
检查ch是否是字母,是字母返回1.不是则返回0,
去网上下个C语言函数看看吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询