全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:688
推到 Plurk!
推到 Facebook!

有辦法改成常數嗎

答題得分者是:justdo
jackyung
一般會員


發表:22
回覆:46
積分:13
註冊:2004-01-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-28 01:24:39 IP:218.171.xxx.xxx 未訂閱
以下這段可取得 int 變數容許的最高數值 int U_Limit = -1; (unsigned int)U_Limit = ((unsigned int)U_Limit) >> 1; 若 U_Limit 為 8 位元其值為 127 若 U_Limit 為 16 位元其值為 32767 若 U_Limit 為 32 位元其值為 2147483647 若 U_Limit 為 64 位元其值為 -------------- 但這是用變數,會浪費儲存空間和計算時間,有沒有辦法用常數表示或用巨集,若巨集能有類似 VB 的乘幕功能可以這樣做 (0xff ^ sizeof(int)) >> 1,用巨集要怎麼做呢?請高手指導
justdo
高階會員


發表:2
回覆:359
積分:222
註冊:2004-08-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-28 09:23:11 IP:221.169.xxx.xxx 未訂閱
C++本身已經有提供各個基礎型別的limit值    
#include 
int a=numeric_limits::max(); //int最大值
unsigned float b=numeric_limits::min(); //unsigned float最小值
jackyung
一般會員


發表:22
回覆:46
積分:13
註冊:2004-01-24

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-28 14:27:48 IP:218.171.xxx.xxx 未訂閱
引言: C 本身已經有提供各個基礎型別的limit值
#include 
int a=numeric_limits::max(); //int最大值
unsigned float b=numeric_limits::min(); //unsigned float最小值
太感謝了,不過弄了很久才發現還要加個 using namespace std
系統時間:2024-06-28 19:03:01
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!