




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
How
to
use
<<
&
>>?
The
left
shift
…...
Bits
vacated
by
the
shift
operatzero-filled.
This
is
a
logical
shift.
The
right
shift……
Bits
vacated
by
the
shift
operatiare
zero-filled
for
unsigned
quantities.
For
signedquantities,
the
sign
bit
is
propagated
into
the
vacatpositions.
The
shift
is
a
logical
shift
if
the
left
operand
is
anunsigned
quantity;
otherwise,
it
is
an
arithmetic
sh
The
result
of
a
right
shift
of
a
signed
negativequantity….
Although
Microsoft
C++
propagates
themost-significant
bit
to
fill
vacated
bit
positions,no
guarantee
that
other
implementations
will
doAn
Exampleunsigned
char
a
=
0x80;char
b
=
0x80;//128//
-128unsigned
char
c
=
a
>>
1;?c
=
64c
=
a
<<
1;?c
=
0char
d
=
b
>>
1;?d
=
-64d
=
b
<<
1;?d
=
0int
e
=
-1
>>
1;?e
=
-1e
=
-1
<<
1;?e
=
-2Bit
Operation
VS
Boolean
Operation
Boolean
Operation
returns
TRUE(1)
orFALSE(0)0——FALSENOT
0——TRUE
Bit
Operation
returns
bit
calculationresultsAlso
an
exampleint
k
=
1
&
2;k
=
0k
=
1
&&
2;k
=
1k
=
1
|
2;k
=
3k
=
1
||
2;k
=
1k
=
!2;k
=
0k
=
~2;
k
=0xFFFFFFFEHCross-platform
Communication:?Windows/Linux
Socket
Programming:X86
(Little
Endian)
TCP/IP(Big
Endian)Host(Little
Endian)Network(Big
Endian)ntohl,htonl,ntohs,htons完成轉(zhuǎn)換An
other
Example:
EndiannessEndianness問題-Socket編程#define
htons(A)((((uint16)(A)
&
0xff00)
>>
8)
|
(((uint16)(A)
&
0x00ff)8))#define
htonl(A)((((uint32)(A)
&
0xff000000)
>>
24)
|
\(((uint32)(A)
&
0x00ff0000)
>>
8)
|
\(((uint32)(A)
&
0x0000ff00)
<<
8)
|
\(((uint32)(A)
&
0x000000ff)
<<
24))#define
ntohs
htons#define
ntohl
htohlAlso
Another
ExampleTo
Modify
Windows
Style
(&
ExStyle)Use
DWORD
keyword
to
maintain
style,
each
bit
specifies
a
style
ofMainframe
or
ViewTest
a
certain
style
WS_VSCROLL?if
(
Style
&
WS_VSCROLL)Add
a
certain
style
WS_VSCROLL?Style
|=
WS_VSCROLL;Add
some
styles
together
WS_VSCROLL
and
WS_HSCROLL?Style
|=
WS_VSCROLL
|
WS_HSCROLL;Remove
a
certain
style
WS_MINIMIZEBOX??Style
&=
~
WS_MINIMIZEBOX;Style
^=
WS_MINIMIZEBOX;Remove
some
styles
together
WS_MAXIMIZEBOX
andWS_MAXIMIZEBOX??Style
&=
~(WS_MAXIMIZEBOX|
WS_MAXIMIZEBOX);Style
^=
WS_MAXIMIZEBOX|
WS_MAXIMIZEBOX;An
Exercise輸入框(Edit)控件是Windows窗口程序常用的一種控件,它負責(zé)接受從鍵盤輸入的字符。為控制Edit控件的外觀特點,顯示和對齊方式等,我們?yōu)樗x一些屬性,每一個屬性用一個
Word的常數(shù)來表示,該數(shù)只有某一位(bit)為1,其它位為0。Edit控件的所有屬性用一個
Word型的字來表示,該字的每一位(bit)表示一種相應(yīng)屬性,稱該字為屬性字。Edit控件的E屬S_性LE定FT
義如下:EQU0001H;左對齊ES_CENTER
EQU0002H;居中對齊ES_RIGHT
EQU0004H;右對齊ES_MULTILINE
EQU0008H;多行顯示ES_UPPERCASE
EQU0010H;顯示大寫字母現(xiàn)假設(shè)AX寄存器里面存放要建立的Edit控件的屬性字,該屬性字包含一些初始屬性。編寫一個完整的程序,對該屬性字進行處理,來按順序完成下列功能:Y
為Edit控件添加兩個屬性ES_LEFT和ES_MULTILINE;Y
測試Edit控件是否有屬性ES_RIGHT,如果有,刪除該屬性;Y
測試Edit控件是否有屬性ES_AUTOVSCROLL,如果有,刪除該屬性;如果沒有,添加該屬性;Y
測試Edit控件是否同時具有ES_UPPERCASE和ES_LOWERCASE兩個屬性。如果是,顯示一個字符串“EditBox
Style
Error!”;否則,顯示一個字符串“EditBox
Style
Right!”;Y
程序結(jié)束。程序如下:;;;;;定義符號常數(shù);;;;;;;;;;;;ES_LEFT
EQU
0001H
;左對齊ES_CENTEREQU
0002H;居中對齊ES_RIGHTEQU
0004H;右對齊ES_MULTILINEEQU
0008H;多行顯示ES_UPPERCASEEQU
0010H;顯示大寫字母ES_LOWERCA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 虹口區(qū)保潔服務(wù)合同協(xié)議
- 合作伙伴怎樣寫協(xié)議合同
- 多人入股合同協(xié)議
- 堡坎勞務(wù)施工合同協(xié)議書
- 買山合同協(xié)議
- 承包耕地協(xié)議合同
- 亞馬遜公司合同協(xié)議
- 服裝區(qū)間協(xié)議合同范本
- 飯店股東合同協(xié)議
- 生物醇油配送合同協(xié)議書
- 黃芩中黃芩苷的提取分離
- 裝配式建筑預(yù)制混凝土構(gòu)件連接方式全解課件
- 含麻黃堿類藥品登記表
- -電子公章-模板
- 語音信號處理第4講剖析
- 錘擊鋼筋混凝土預(yù)制樁綜合施工記錄
- 初中化學(xué)人教九年級下冊(2023年新編) 酸和堿黃琳娜微項目皮蛋制作中的化學(xué)教學(xué)設(shè)計
- Q∕SY 02098-2018 施工作業(yè)用野營房
- 《博物館館藏文物管理庫房工作日志》示例
- 施工現(xiàn)場防洪防汛應(yīng)急預(yù)案45173
- 大貓英語分級閱讀 八級1 Unusual Traditions課件
評論
0/150
提交評論