經常發現一些C語言中通過#define 定義的數據中包含有UL符號,不理解爲什麼,把他去掉髮現也沒有什麼區別。
現在才明白UL是標記該宏長整型 十進制 數據,而不是字符,也不是int型數據。
C語言中默認宏中的數字是整型數據。
如下面的例子:
#define LENGTH (20UL*1024*1024)
你要輸出他的話就要這樣:
printf(“LENGTH is %ld\n”,LENGTH);
#define SECOND_PER_YEAR (60*60*24*365)UL
經常發現一些C語言中通過#define 定義的數據中包含有UL符號,不理解爲什麼,把他去掉髮現也沒有什麼區別。
現在才明白UL是標記該宏長整型 十進制 數據,而不是字符,也不是int型數據。
C語言中默認宏中的數字是整型數據。
如下面的例子:
#define LENGTH (20UL*1024*1024)
你要輸出他的話就要這樣:
printf(“LENGTH is %ld\n”,LENGTH);
#define SECOND_PER_YEAR (60*60*24*365)UL