﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-被窝里的流年-随笔分类-C++</title><link>http://www.cppblog.com/cs569652894/category/16562.html</link><description>在CR学习的点点滴滴，希望能够给那些还在举步维艰的人给予一点点帮助！一起共同进步！加油！</description><language>zh-cn</language><lastBuildDate>Mon, 13 Jun 2011 04:57:32 GMT</lastBuildDate><pubDate>Mon, 13 Jun 2011 04:57:32 GMT</pubDate><ttl>60</ttl><item><title>c++中的数据类型</title><link>http://www.cppblog.com/cs569652894/archive/2011/06/12/148528.html</link><dc:creator>CrackerCS</dc:creator><author>CrackerCS</author><pubDate>Sun, 12 Jun 2011 04:55:00 GMT</pubDate><guid>http://www.cppblog.com/cs569652894/archive/2011/06/12/148528.html</guid><wfw:comment>http://www.cppblog.com/cs569652894/comments/148528.html</wfw:comment><comments>http://www.cppblog.com/cs569652894/archive/2011/06/12/148528.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cs569652894/comments/commentRss/148528.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cs569652894/services/trackbacks/148528.html</trackback:ping><description><![CDATA[long和int的区别 
long是固定长度的，所占的内存空间为4个字节 。
int是机器字节长度，根据你的处理器设置，如果是32位的处理器则int是32位长，如果是64位处理器则是64位长。

int型的数占的内存空间在16位系统里是2个字节,在32位系统里是4个字节，在64位系统里是8个字节。
sizeof(short) &lt;= sizeof(int) &lt;= sizeof(long) 
只要遵循以上原则,int类型的长度并不是固定的,它和系统平台有关系。
如果你的系统应该是32位的，所以long和int 都是4个字节，没有什么区别.

DOS      int = 2 bytes     long = 4 bytes
windows  int = 4 bytes     long = 4 bytes
vista    int = 8 bytes     long = 4 bytes 
--------------------------------------------------------------------------------
BOOL和bool的区别

    在编程中经常用到布尔变量，今天用到了true和false，又想起了大写的他们，下面我谈谈BOOL和bool的区别。

    一、
    1、类型不同
    BOOL为int型
    bool为布尔型
    2、长度不同
    bool只有一个字节
    BOOL长度视实际环境来定，一般可认为是4个字节
    3、取值不同
    bool取值false和true，是0和1的区别
    BOOL取值FALSE和TRUE，是0和非0的区别
    二：
    bool是标准C++数据类型，可取值true和false。单独占一个字节，
    如果数个bool对象列在一起，可能会各占一个bit，这取决于编译器。

    BOOL是微软定义的typedef int BOOL。与bool不同，它是一个三值逻辑，
    TRUE/FALSE/ERROR，返回值为&gt;0的整数为TRUE，0为FALSE，-1为ERROR。
    Win32 API中很多返回值为BOOL的函数都是三值逻辑。比如GetMessage().
    三：例子
    bool x=3;   //告警
    bool x=1;   //正确
    BOOL x=3;   //正确
    BOOL x=3.3;   //告警

    注：windows为了兼容问题定义的基础变量。解决程序在C与C++中环境的差异：
    typedef unsigned long        DWORD;
    typedef int                  BOOL;
    typedef unsigned char        BYTE;
    typedef unsigned short       WORD;
    typedef float                FLOAT;
    typedef FLOAT                *PFLOAT;
    typedef BOOL near            *PBOOL;
    typedef BOOL far             *LPBOOL;
    typedef BYTE near            *PBYTE;
    typedef BYTE far             *LPBYTE;
    typedef int near             *PINT;
    typedef int far              *LPINT;

--------------------------------------------------------------------------------
MFC数据类型:

下面这些是和Win32程序共同使用的数据类型

BOOL：布尔值，取值为TRUE or FALSE

BSTR：32-bit 字符指针

BYTE：8-bit整数，未带正负号

COLORREF：32-bit数值，代表一个颜色值

DWORD：32-bit整数，未带正负号

LONG：32-bit整数，带正负号

LPARAM：32-bit整数，作为窗口函数或callback函数的一个参数

LPCSTR：32-bit指针，指向一个常数字符串

LPSTR：32-bit指针，指向一个字符串

LPCTSTR：32-bit指针，指向一个常数字符串，此字符串可以移植到Unicode和DBCS

LPTSTR：32-bit指针，指向一个字符串，此字符串可以移植到Unicode和DBCS

LPVOID：32-bit指针，指向一个未指定类型的数据

LPRESULT：32-bit数值，作为窗口函数或callback函数的返回值

UINT：在Win16中是一个16-bit 未带正负号整数，在Win32中是一个32-bit 未带 正负号整数，

WNDPROC：32-bit指针，指向一个窗口函数

WORD：16-bit 整数 ，未带正负号

WPARAM：窗口函数或callback函数的一个参数，在Win16中是16-bit，在Win32中是32-bit

下面这些是MFC独特的数据类型

POSITION：一个数值，代表collection对象（例如数组或链表）中的元素位置，常 用于MFC collection classes（即数据处理类，如CArray）

LPCRECT：32-bit指针，指向一个不变的RECT结构<img src ="http://www.cppblog.com/cs569652894/aggbug/148528.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cs569652894/" target="_blank">CrackerCS</a> 2011-06-12 12:55 <a href="http://www.cppblog.com/cs569652894/archive/2011/06/12/148528.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个小小的溢出难倒不少人</title><link>http://www.cppblog.com/cs569652894/archive/2011/04/24/144900.html</link><dc:creator>CrackerCS</dc:creator><author>CrackerCS</author><pubDate>Sun, 24 Apr 2011 06:40:00 GMT</pubDate><guid>http://www.cppblog.com/cs569652894/archive/2011/04/24/144900.html</guid><wfw:comment>http://www.cppblog.com/cs569652894/comments/144900.html</wfw:comment><comments>http://www.cppblog.com/cs569652894/archive/2011/04/24/144900.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cs569652894/comments/commentRss/144900.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cs569652894/services/trackbacks/144900.html</trackback:ping><description><![CDATA[<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 12pt; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: 微软雅黑; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080">&nbsp;1</span>&nbsp;<span style="COLOR: #000000">#include&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">stdafx.h</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;2</span>&nbsp;<span style="COLOR: #000000">#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">iostream.h</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;3</span>&nbsp;<span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;4</span>&nbsp;<span style="COLOR: #000000"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;main(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;argc,&nbsp;</span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;argv[])<br></span><span style="COLOR: #008080">&nbsp;5</span>&nbsp;<span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">&nbsp;6</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;f&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">10.125f</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">&nbsp;7</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;</span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000">&nbsp;szBuffer[</span><span style="COLOR: #000000">5</span><span style="COLOR: #000000">]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;{</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">};<br></span><span style="COLOR: #008080">&nbsp;8</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;cin&nbsp;</span><span style="COLOR: #000000">&gt;&gt;</span><span style="COLOR: #000000">&nbsp;szBuffer;<br></span><span style="COLOR: #008080">&nbsp;9</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;cout&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;hex&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">)f&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;endl;&nbsp;<br></span><span style="COLOR: #008080">10</span>&nbsp;<span style="COLOR: #000000"><br></span><span style="COLOR: #008080">11</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">12</span>&nbsp;<span style="COLOR: #000000">}<br><br></span></div>
输入123456789 先不用编译器看看 你是否能够答对！！
<img src ="http://www.cppblog.com/cs569652894/aggbug/144900.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cs569652894/" target="_blank">CrackerCS</a> 2011-04-24 14:40 <a href="http://www.cppblog.com/cs569652894/archive/2011/04/24/144900.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>