<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[博雅宇轩]]></title> 
<link>http://www.lewensky.cn/index.php</link> 
<description><![CDATA[Lewen的软件世界]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[博雅宇轩]]></copyright>
<item>
<link>http://www.lewensky.cn/read.php/698.htm</link>
<title><![CDATA[Windows API ShowCursor 函数使用]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Tue, 29 Jun 2010 12:01:50 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/698.htm</guid> 
<description>
<![CDATA[ 
	百度百科：<br/><br/><div class="quote"><div class="quote-title">引用</div><div class="quote-content"><br/>　　函数功能：该函数显示或隐藏光标。<br/>　　函数原型：int ShowCursor（BOOL bShow）；<br/>　　参数：<br/>　　bShow：确定内部的显示计数器是增加还是减少，如果bShow为TRUE，则显示计数器增加1，如果bShow为FALSE，则计数器减1。<br/>　　返回值：返回值规定新的显示计数器。<br/>　　备注：该函数设置了一个内部显示计数器以确定光标是否显示，仅当显示计数器的值大于或等于0时，光标才显示，如果安装了鼠标，则显示计数的初始值为0。如果没有安装鼠标，显示计数是C1。<br/>　　速查：Windows NT：3.1及以上版本；Windows：95及以上版本；Windows CE：不支持；头文件：winuser.h；库文件：user32.lib。<br/></div></div><br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/windows/" rel="tag">windows</a> , <a href="http://www.lewensky.cn/go.php/tags/api/" rel="tag">api</a> , <a href="http://www.lewensky.cn/go.php/tags/showcursor/" rel="tag">showcursor</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E5%2587%25BD%25E6%2595%25B0/" rel="tag">函数</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E4%25BD%25BF%25E7%2594%25A8/" rel="tag">使用</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/419.htm</link>
<title><![CDATA[介绍WinSock中“阻塞”与“非阻塞”的概念]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Thu, 19 Nov 2009 00:44:46 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/419.htm</guid> 
<description>
<![CDATA[ 
	<br/>在Windows环境下，一般采用“非阻塞”方式。对于客户端Socket来说，如果把Cli<br/>entType特性设为ctNonBlocking，表示采用非阻塞方式进行连接。当位于另一端的服务<br/>器端Socket试图进行读或写时，客户端Socket就会得到通知(OnRead事件或OnWrite事件<br/>)。<br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/%25E4%25BB%258B%25E7%25BB%258D/" rel="tag">介绍</a> , <a href="http://www.lewensky.cn/go.php/tags/winsock%25E9%2598%25BB%25E5%25A1%259E/" rel="tag">winsock阻塞</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E9%259D%259E%25E9%2598%25BB%25E5%25A1%259E/" rel="tag">非阻塞</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E6%25A6%2582%25E5%25BF%25B5/" rel="tag">概念</a> , <a href="http://www.lewensky.cn/go.php/tags/c%252B%252B/" rel="tag">c++</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E7%25BC%2596%25E7%25A8%258B/" rel="tag">编程</a> , <a href="http://www.lewensky.cn/go.php/tags/socket/" rel="tag">socket</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/324.htm</link>
<title><![CDATA[异常控制try，catch用法小结]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Tue, 15 Sep 2009 07:16:16 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/324.htm</guid> 
<description>
<![CDATA[ 
	1、基础介绍<br/>try<br/>&#123;<br/>//程序中抛出异常<br/>throw value;<br/>&#125;<br/>catch(valuetype v)<br/>&#123;<br/>//例外处理程序段<br/>&#125;<br/>语法小结：throw抛出值，catch接受，当然，throw必须在“try语句块”中才有效。<br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/%25E5%25BC%2582%25E5%25B8%25B8%25E6%258E%25A7%25E5%2588%25B6/" rel="tag">异常控制</a> , <a href="http://www.lewensky.cn/go.php/tags/try/" rel="tag">try</a> , <a href="http://www.lewensky.cn/go.php/tags/catch/" rel="tag">catch</a> , <a href="http://www.lewensky.cn/go.php/tags/c%252B%252B/" rel="tag">c++</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E7%2594%25A8%25E6%25B3%2595/" rel="tag">用法</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E6%2595%2599%25E7%25A8%258B/" rel="tag">教程</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/322.htm</link>
<title><![CDATA[STL 简介，标准模板库]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Mon, 14 Sep 2009 08:12:27 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/322.htm</guid> 
<description>
<![CDATA[ 
	&nbsp;&nbsp;&nbsp;&nbsp;什麽是STL呢？STL就是Standard Template Library，标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说，STL是一些“容器”的集合，这些“容器”有list, vector,set,map等，STL也是算法和其他一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。&nbsp;&nbsp;&nbsp;&nbsp;STL的目的是标准化组件，这样你就不用重新开发它们了。你可以仅仅使用这些现成的组件。STL现在是C++的一部分，因此不用额外安装什麽。它被内建在 你的编译器之内。因为STL的list是一个简单的容器，所以我打算从它开始介绍STL如何使用。如果你懂得了这个概念，其他的就都没有问题了。另外， list容器是相当简单的，我们会看到这一点。&nbsp;&nbsp;&nbsp;&nbsp;这篇文章中我们将会看到如何定义和初始化一个list，计算它的元素的数量，从一个list里查找元素，删除元素，和一些其他的操作。要作到这些，我们将 会讨论两个不同的算法，STL通用算法都是可以操作不止一个容器的，而list的成员函数是list容器专有的操作。<br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/stl/" rel="tag">stl</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E7%25AE%2580%25E4%25BB%258B/" rel="tag">简介</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E6%25A0%2587%25E5%2587%2586%25E6%25A8%25A1%25E6%259D%25BF%25E5%25BA%2593/" rel="tag">标准模板库</a> , <a href="http://www.lewensky.cn/go.php/tags/c%252B%252B/" rel="tag">c++</a> , <a href="http://www.lewensky.cn/go.php/tags/vc/" rel="tag">vc</a> , <a href="http://www.lewensky.cn/go.php/tags/builder/" rel="tag">builder</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/234.htm</link>
<title><![CDATA[getch()、getche()和getchar()函数的区别]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Fri, 19 Jun 2009 09:22:11 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/234.htm</guid> 
<description>
<![CDATA[ 
	<br/><strong>getchar()</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;函数名：getchar()<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;头文件：stdio.h<br/>　　功&nbsp;&nbsp;能：从I/O流中读字符<br/>　　原&nbsp;&nbsp;型：int getchar(void);<br/><strong>getch()</strong><br/>　　函数名：getch()：<br/>　　头文件：conio.h<br/>　　功&nbsp;&nbsp;能：从控制台读取一个字符，但不显示在屏幕上<br/>　　原&nbsp;&nbsp;型：int getch(void)<br/>　　返回值：读取的字符<br/><strong>getche()</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;函数名：getche<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;头文件：conio.h<br/>　　功&nbsp;&nbsp;能：从控制台取字符(带回显)<br/>　　用&nbsp;&nbsp;法：int getche(void)；<br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/%25E5%2587%25BD%25E6%2595%25B0/" rel="tag">函数</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/186.htm</link>
<title><![CDATA[c和c++分别实现动态分配二、三维数组(转)]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Wed, 18 Mar 2009 02:09:56 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/186.htm</guid> 
<description>
<![CDATA[ 
	本文主要目的是用c和c++分别实现动态分配二、三维数组。一般而言，在C中用malloc和free实现，而在C++中用new和delete。 new和delete是c++操作符，malloc和free是c语言函数，它们都可以用来为对象动态分配空间，最大的区别在于：当用new和 delete为对象分配空间或delete对象时，将缺省的调用对象的构造函数及析购函数，而malloc和free是原来c库中的函数，显然没有这项功 能，因此，在c++中，最好使用new和delete。<br/><br/>动态分配二维数组的程序<br/><span style="font-family: Comic Sans MS;"><span style="color: #008000;">//////////////c用malloc和free//////////////////////////////<br/></span></span><span style="font-family: Fixedsys;"><span style="color: #0000FF;">#include&nbsp;&nbsp; </span><span style="color: #808080;">"stdio.h"&nbsp;&nbsp; <br/></span><span style="color: #0000FF;">#include&nbsp;&nbsp; </span><span style="color: #808080;">"stdlib.h"&nbsp;&nbsp; <br/><br/></span><span style="color: #0000FF;">void&nbsp;&nbsp; </span><span style="color: #000000;">main</span><span style="color: #000080;">()&nbsp;&nbsp; <br/>&#123;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF;">int </span><span style="color: #000080;">**</span><span style="color: #000000;">p</span><span style="color: #000080;">;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF;">int </span><span style="color: #000000;">i</span><span style="color: #000080;">,</span><span style="color: #000000;">j</span><span style="color: #000080;">; </span></span>[font=Comic Sans MS][color=#008000]//p[4][8] <br/>&nbsp;&nbsp;&nbsp;&nbsp;//开始分配4行8列的二维数据&nbsp;&nbsp; <br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/%25E5%258A%25A8%25E6%2580%2581/" rel="tag">动态</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E6%2595%25B0%25E7%25BB%2584/" rel="tag">数组</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/138.htm</link>
<title><![CDATA[sizeof()函数说明]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Sat, 27 Sep 2008 05:39:28 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/138.htm</guid> 
<description>
<![CDATA[ 
	<br/>　　这是初学者问得最多的一个问题，所以这里有必要多费点笔墨。让我们先看一个结构体：<br/>　　struct S1<br/>　　&#123;<br/>　　char c;<br/>　　int i;<br/>　　&#125;;<br/>　　问sizeof(s1)等于多少聪明的你开始思考了，char占1个字节，int占4个字节，那么加起来就应该是5。是这样吗你在你机器上试过了吗也许你是对的，但很可能你是错的！VC6中按默认设置得到的结果为8。<br/><br/>　　Why为什么受伤的总是我<br/>　　请不要沮丧，我们来好好琢磨一下sizeof的定义——sizeof的结果等于对象或者类型所占的内存字节数，好吧<br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/sizeof/" rel="tag">sizeof</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/137.htm</link>
<title><![CDATA[memset函数详细说明]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Sat, 27 Sep 2008 05:31:12 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/137.htm</guid> 
<description>
<![CDATA[ 
	<br/>1。void *memset(void *s,int c,size_t n)<br/>总的作用：将已开辟内存空间 s 的首 n 个字节的值设为值 c。<br/><br/>2。例子<br/><br/>main()&#123;<br/>char *s="Golden Global View";<br/><br/>clrscr();<br/><br/>memset(s,'G',6);//貌似这里有点问题//<br/>printf("%s",s);<br/><br/>getchar();<br/>return 0;<br/>&#125;　<br/>3。memset() 函数常用于内存空间初始化。如：<br/>char str[100];<br/>memset(str,0,100);<br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/memset/" rel="tag">memset</a> , <a href="http://www.lewensky.cn/go.php/tags/%25E5%2587%25BD%25E6%2595%25B0/" rel="tag">函数</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/130.htm</link>
<title><![CDATA[C++ inline函数 介绍]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Fri, 19 Sep 2008 03:11:19 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/130.htm</guid> 
<description>
<![CDATA[ 
	<br/>我们看下面的函数，函数体中只有一行语句： <br/>&nbsp;&nbsp;&nbsp;&nbsp;double Average(double total, int number)&#123; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return total/number; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; <br/>定义这么简单的函数有必要吗？实际上，它还是有一些优点的：第一，它使程序更可读；第二，它使这段代码可以重复使用。但是，它也有缺点：当它被频繁地调用的时候，由于调用函数的开销，会对应用程序的性能(时间＋空间效率，这儿特指时间)有损失。例如，Average在一个循环语句中重复调用几千次，会降低程序的执行效率。 <br/>&nbsp;&nbsp;&nbsp;&nbsp;那么，有办法避免函数调用的开销吗？对于上面的函数，我么可以把它定义为内联函数的形式： <br/>&nbsp;&nbsp;&nbsp;&nbsp;inline double Average(double total, int number)&#123; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return total/number; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125; <br/>函数的引入可以减少程序的目标代码，实现程序代码的共享。 <br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/c%252B%252B/" rel="tag">c++</a> , <a href="http://www.lewensky.cn/go.php/tags/inline/" rel="tag">inline</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/129.htm</link>
<title><![CDATA[匈牙利命名法]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Fri, 19 Sep 2008 02:37:09 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/129.htm</guid> 
<description>
<![CDATA[ 
	<p><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; n年以前,Charles Simonyi(他后来成为微软的著名程序员)设计了一种以前缀为基础的命名方法,这种方法后来称为&quot;匈牙利表示法&quot;以记念他.他的思想是根据每个标识符所代表的含义给它一个前缀.微软后来采用了这个思想,给每个标识符一个前缀以说明它的数据类型.因此,整型变量的前缀是n,长整型变量是nl,字符型数组变量是ca,以及字符串(以空类型结尾的字符数组)以sz为前缀.这些名字可能会非常古怪.比如说:lpszFoo表示&quot;Foo&quot;是一个指向以空字符为结尾的字符串的长整型指针.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这种方法的优点是使人能够通过变量的名字来辨别变量的类型,而不比去查找它的定义.遗憾的是,这种方法不仅使变量名字非常绕口,而且使改变变量类型的工作变得十分艰巨.在Windows3.1中,整型变量为16为宽.如果我们在开始时采用了一个整型变量,但是在通过30---40个函数的计算之后,发现采用整型变量宽度不够,这时我们不仅要改变这个变量的类型,而且要改变这个变量在这30--40个函数中的名字.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 因为不切实际,除了一些顽固的Windows程序员外已经没有人再使用&quot;匈牙利表示法&quot;了.毫无疑问,在某种场合它依然存在,但大部分人现在已经抛弃它了.一般而言,输入前缀是一种糟糕的想法,因为它把变量于其类型紧紧地绑在了一起.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 对于30行以下的函数，匈牙利方法一般有优势。尤其是对界面编程，有优势。但对于有强烈的算法要求、尤其是有很多抽象类型的C++程序，匈牙利方法简直是一个灾难。看你用在什么地方。现在有了很好的IDE工具,如:VC,SourceInsight等.选中变量,会自动提示告诉你它的声明和定义,这样匈牙利命名法就没有很大的必要了.无非就是为了程序可读性较好.实际上良好的代码书写习惯比强制使用匈牙利命名法更重要.系统性。整体性。可读性。分类要清楚。要有注释！<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 匈牙利命名法是微软推广的一种关于变量、函数、对象、前缀、宏定义等各种类型的符号的命名规范。匈牙利命名法的主要思想是：在变量和函数名中加入前缀以增进人们对程序的理解。它是由微软内部的一个匈牙利人发起使用的，结果它在微软内部逐渐流行起来，并且推广给了全世界的Windows开发人员。下面将介绍匈牙利命名法，后面的例子里也会尽量遵守它和上面的代码风格。还是那句话，并不是要求所有的读者都要去遵守，但是希望读者作为一个现代的软件开发人员都去遵守它。</p><p></p><strong><span>匈牙利命名法<br /></span></strong><span><br /></span><strong><span>MFC</span></strong><strong><span>、句柄、控件及结构的命名规范</span></strong><span><span style="font-family: 宋体"> <br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/%25E5%258C%2588%25E7%2589%2599%25E5%2588%25A9/" rel="tag">匈牙利</a> , <a href="http://www.lewensky.cn/go.php/tags/c%252B%252B/" rel="tag">c++</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/122.htm</link>
<title><![CDATA[using namespace std详解]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Thu, 11 Sep 2008 05:19:50 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/122.htm</guid> 
<description>
<![CDATA[ 
	一 ：<br/><br/><iostream>和<iostream.h>是不一样，前者没有后缀，实际上，在你的编译器include文件夹里面可以看到，二者是两个文件，打开文件就会发现，里面的代码是不一样的。 <br/><br/>后缀为.h的头文件c++标准已经明确提出不支持了，早些的实现将标准库功能定义在全局空间里，声明在带.h后缀的头文件里，c++标准为了和C区别开，也为了正确使用命名空间，规定头文件不使用后缀.h。 <br/><br/>因 此，当使用<iostream.h>时，相当于在c中调用库函数，使用的是全局命名空间，也就是早期的c++实现；当使用< iostream>的时候，该头文件没有定义全局命名空间，必须使用namespace std；这样才能正确使用cout。<br/><br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/%25E5%2590%258D%25E7%25A9%25BA%25E9%2597%25B4/" rel="tag">名空间</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/116.htm</link>
<title><![CDATA[pragma指令简介]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Wed, 10 Sep 2008 00:52:18 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/116.htm</guid> 
<description>
<![CDATA[ 
	在编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作.<br/>下面介绍了一下该指令的一些常用参数,希望对大家有所帮助!<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 一. message 参数。 <br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; message <br/>它能够在编译信息输出窗&nbsp;&nbsp;<br/>口中输出相应的信息，这对于源代码信息的控制是非常重要的。其使用方法为：&nbsp;&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #pragma message(“消息文本”)&nbsp;&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 当编译器遇到这条指令时就在编译输出窗口中将消息文本打印出来。&nbsp;&nbsp;<br/>当我们在程序中定义了许多宏来控制源代码版本的时候，我们自己有可能都会忘记有没有正确的设置这些宏，此时我们可以用这条<br/>指令在编译的时候就进行检查。假设我们希望判断自己有没有在源代码的什么地方定义了_X86这个宏可以用下面的方法&nbsp;&nbsp;<br/>#ifdef _X86&nbsp;&nbsp;<br/>#pragma message(“_X86 macro activated!”)&nbsp;&nbsp;<br/>#endif&nbsp;&nbsp;<br/>当我们定义了_X86这个宏以后，应用程序在编译时就会在编译输出窗口里显示“_&nbsp;&nbsp;<br/>X86 macro activated!”。我们就不会因为不记得自己定义的一些特定的宏而抓耳挠腮了&nbsp;&nbsp;<br/>&nbsp;&nbsp;<br/><br/><br/>............<br/><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/pargma/" rel="tag">pargma</a>
]]>
</description>
</item><item>
<link>http://www.lewensky.cn/read.php/2.htm</link>
<title><![CDATA[在C++实现星号显示输入的密码]]></title> 
<author>Lewen &lt;lewensky@gmail.com&gt;</author>
<category><![CDATA[C/C++]]></category>
<pubDate>Sat, 08 Mar 2008 15:56:47 +0000</pubDate> 
<guid>http://www.lewensky.cn/read.php/2.htm</guid> 
<description>
<![CDATA[ 
	<table border="0" style="table-layout: fixed"><tbody><tr><td><div id="blog_text" class="cnt"><p></p><p></p><p>#include&lt;stdio.h&gt; <br />#include&lt;conio.h&gt; <br />#include&lt;iostream.h&gt;<br />#include&lt;string.h&gt;</p><p>void main() <br />&#123; <br />char c,pas[9]=&#123;0&#125;,pas1[9]=&#123;0&#125;;<br />int i;<br />strcpy(pas1,&quot;12345678&quot;);<br />cout&lt;&lt;&quot;in&quot;&lt;&lt;endl;<br />for(i=0; i&lt;8; i++) <br />&#123; <br />c = getch(); //接收字符<br />if(c==13)&#123;n=1;break;&#125;//判断输入的是否回车<br />else<br />&#123;<br />pas[i]=c;<br />putchar('*'); //输出星号<br />&#125;<br />&#125; <br />pas[9]='&#92;0';//在最后一位设置结束标志<br />cout&lt;&lt;&quot;The password is: &quot;&lt;&lt;endl; <br />cout&lt;&lt;pas;<br />if(strcmp(pas,pas1)==0)cout&lt;&lt;&quot;Success!&quot;&lt;&lt;endl;<br />&#125;</p></div></td></tr></tbody></table><br/>Tags - <a href="http://www.lewensky.cn/go.php/tags/%25E6%2598%259F%25E5%258F%25B7/" rel="tag">星号</a>
]]>
</description>
</item>
</channel>
</rss>