在C语言中,怎么判断一个变量是int型的还是char型的? 20

比如在函数调用时,如果函数的参数是int的,可是却调用时实参却是char的,怎么判断其合法性呢?... 比如在函数调用时,如果函数的参数是int的,可是却调用时实参却是char的,怎么判断其合法性呢? 展开
 我来答
L_o_o_n_i_e
2006-03-25 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5234万
展开全部
变量是int型的还是char型,是由声明决定的。

函数调用时参数类型错,你编译时就通不过呀。

unsigned char 可以当无符号整型用。
班楠l
2006-03-24 · TA获得超过135个赞
知道答主
回答量:69
采纳率:0%
帮助的人:0
展开全部
用sizeof操作符在运行时来判定变量字长是错误的。因为sizeof()的值在编译时就确定了。上面老兄的函数永远只能返回-1
其实在C语言中用不着去判断变量类型。如果再调用函数时传入了不匹配的类型,编译器会给出警告。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5b0fa49ba
2006-03-24
知道答主
回答量:5
采纳率:0%
帮助的人:0
展开全部
假设函数形式为:int function(int n);

方法1:判断实参字长:

int function(int n) {
int length = sizeof(n); //取n的字长
if ( length != 4 ) //判断n是否为32位整数
return -1; //不是整数返回-1;
else {
...
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3efb5d382
2006-03-24
知道答主
回答量:46
采纳率:0%
帮助的人:24.4万
展开全部
在C语言里有个函数可以判断输入的是不是数字或者字母
int isalpha(int ch);
检查ch是否是字母,是字母返回1.不是则返回0,
去网上下个C语言函数看看吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
夕霞孤雁
2006-03-25
知道答主
回答量:18
采纳率:0%
帮助的人:6.4万
展开全部
严格来说,是没法判断的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式