标签:说明 default get har ali 有符号 int c编程 判断
1.char *b = const char *a 会报警告,而const char* a = char *b不会,要使这种赋值形式合法,必须满足下列条件之一:
1)两个操作数都是指向有限定符或无限定符的相容类型的指针
2)左边指针指向的类型必须具有右边指针所指向类型的全部限定符
警告内容:initialization discards ‘const’ qualifier from pointer target type [enabled by default]
(C专家编程:1.9节)
2.对有符号数转换为无符号数的例子和解决办法
来看一段代码:
int main()
{
int d = -1;
unsigned int a = 3;
if(d < a)
{
printf("d is low\n");
}
}
这段代码在运行后毫无反应,说明程序没有进入if判断语句,即if判断的返回值总是0
原因显而易见,因为d被转换为无符号整数,会变得很大,这样永远都大于a,
解决的办法是
if(d < (int a))
(C编程专家:1.10节)
标签:说明 default get har ali 有符号 int c编程 判断
原文地址:https://www.cnblogs.com/zzdbullet/p/9901092.html