int和unsigned的區別,C語言拾遺-C語言關鍵字-signed與unsigned

 2023-12-25 阅读 67 评论 0

摘要:摘要:在C語言中,signed/unsigned用于修飾整數變量,signed表示有符號的,unsigned表示無符號的。 signed/unsigned 在C語言中,所有的十進制整數都會轉化成二進制進行存儲。以8-bit 計算機為例,定義 int a = 1,那么a的存儲

摘要:在C語言中,signed/unsigned用于修飾整數變量,signed表示有符號的,unsigned表示無符號的。

signed/unsigned

在C語言中,所有的十進制整數都會轉化成二進制進行存儲。以8-bit 計算機為例,定義 int a = 1,那么a的存儲方式用表格來表示如下 :

00000001

上面表格中最左端的為最高位,最右端的為最低位。C語言默認存儲類型為signed,所以 int a = 1等價于signed int a = 1。signed意思為有符號的,其第一位代表正負,剩余的代表大小。當第一位為0時,表示正數。為1時,表示負數。所以signed int a的取值范圍為:-128~127。

int和unsigned的區別。unsigned意思為無符號的,所有的位都為大小,沒有負數,例如:unsigned?int a的取值范圍為:0~255。

補充說明:

  • 如果一個表達式同時含有signed和unsigned類型的變量,在對該表達式進行計算時,要注意到C語言的強制類型轉換,否則可能會出錯。
  • signed/unsigned只能用于修飾整數變量,不能用來修飾float,double等類型的變量。

參考鏈接

https://www.cnblogs.com/lyxcode/p/9449466.html
https://blog.csdn.net/ljianhui/article/details/10367703

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/196867.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息