<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>北风技术专栏 &#187; 风风</title>
	<atom:link href="http://column.ibeifeng.com/wp-feed.php?author_name=allg0&#038;feed=feed" rel="self" type="application/rss+xml" />
	<link>http://column.ibeifeng.com</link>
	<description>用技术点亮生活中每个亮点</description>
	<pubDate>Tue, 07 Apr 2009 09:38:07 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
	<language>en</language>
			<item>
		<title>浅谈一个新手如何成为一名C++程序员</title>
		<link>http://column.ibeifeng.com/allg0/2008092552.shtml</link>
		<comments>http://column.ibeifeng.com/allg0/2008092552.shtml#comments</comments>
		<pubDate>Wed, 24 Sep 2008 23:23:35 +0000</pubDate>
		<dc:creator>风风</dc:creator>
		
		<category><![CDATA[综合]]></category>

		<category><![CDATA[C++]]></category>

		<category><![CDATA[新手]]></category>

		<category><![CDATA[程序员]]></category>

		<guid isPermaLink="false">http://column.ibeifeng.com/?p=52</guid>
		<description><![CDATA[入门就是要初步对编程的思想有个了解，并且能编程解决一些小问题。入门一定要选好书，难度如果太低了会造成对读者的误导，以为编程就是这么回事；也不能太高深，免的打击读者的信心。既然编程的入门要求是编一些小程序解决小问题，那么就没必要直接学习C++，我觉得循环、判断、跳转、指针才是最基本的编程思想，学通了这些对以后学习C++很有帮助。]]></description>
			<content:encoded><![CDATA[<p>入门：</p>
<p>入门就是要初步对编程的思想有个了解，并且能编程解决一些小问题。入门一定要选好书，难度如果太低了会造成对读者的误导，以为编程就是这么回事；也不能太高深，免的打击读者的信心。既然编程的入门要求是编一些小程序解决小问题，那么就没必要直接学习C++，我觉得循环、判断、跳转、指针才是最基本的编程思想，学通了这些对以后学习C++很有帮助。</p>
<p><span id="more-52"></span></p>
<p>我建议应该先把C扎实地学好，不光要掌握C的语法，因为学习编程的最终目的是解决实际问题，所以还要适当掌握把实际问题与编程联系在一起的能力，我推荐《 C程序设计语言(第2版) 》，这本书是C语言之父写的，不仅详尽介绍了C的语法，还提供了很多实际的小问题作为实例，可以说看了这本书之后能为以后的编程学习打下一个扎实的基础！</p>
<p>提高：</p>
<p>学了《 C程序设计语言(第2版) 》后可以开始学习C++，一开始没必要钻很深的大部头书，《 Essential C++中文版 》非常适合初学，一个礼拜就可以看完，看了它可以快速对C++的全貌有个了解，虽然不会马上熟练掌握C++。</p>
<p>我们不能满足于解决“百钱买百鸡”，真正实现程序还有很多非功能上的问题，比如怎样做才能使用更少的内存？怎样做才能更快？在熟悉一门语言后，一定要认真学习的就是数据结构！数据结构保证了我们的程序能以高效的方式运行。《 数据结构算法与应用C++语言描述 》是本好书，它提供了很多实际的例子，比如火车站调度、走迷宫，相比于“百钱买百鸡”这种问题又提高了一个层次。</p>
<p>接下来专心提高C++的水平，可以选择《 C++编程思想 》，然后再看《 Effective *++中文版 2** Edition 》和《 More Effective C++中文版 》，这两本书介绍了高效使用C++的宝贵经验，语言很幽默。至此，你已经可以自称是C++程序员了，恭喜！</p>
<p>下面介绍几本书，有兴趣的朋友可以选读。如果想高效地使用C++开发软件，STL一定要学！《 C++标准程序库—自修教程与参考手册 》可以帮你学会STL的使用，而且开发时可以拿它做手册，有了前面数据结构的基础，学习STL的使用不会遇到什么困难。如果你还想知道STL的设计思想及原理，不妨看看《 泛型编程与STL 》。有些朋友可能会问，C++的面向对象机制是怎么实现的？《 深度探索C++对象模型 》给了你答案，它剖析了C++底层的实现。最后，如果想有一本C++大百科全书，那非《 C++程序设计语言（特别版） 》莫属！这本书是C++之父Bjarne Stroustrup的大作，算是书中权威。</p>
<p>再提高：</p>
<p>到现在为止，你已经熟练掌握C++语言了，现在需要提高的就是设计思想，面向对象（OO）的最大特点是把我们的注意力从系统的执行体系结构转移到概念体系结构，因此利用OO开发大型系统会更轻松。但是经常可以看到人们拿着C++用面向过程的思想解决问题，缺乏的就是面向对象的设计思想，也难怪，在这里之前看的书都没有教你怎样用面向对象的方法开发系统，顶多介绍了面向对象是什么，看了这么多书难免会先入为主，《C语言程序设计》（或者你看的第一本编程书）中的思路潜在的影响着我们。这条鸿沟就由《 设计模式&#8211;可复用面向对象软件的基础 》来补救吧！所谓模式就是前人总结出来的、经过千锤百炼的一种系统结构，设计模式展示了23个经典的模式，通过学习、理解，你可以看到什么是真正的面向对象。</p>
<p>看了《 设计模式&#8211;可复用面向对象软件的基础 》后，有时间不妨看看《 重构&#8211;改善既有代码的设计（中文版） 》，学了面向对象的设计思想后看它，可以站在一定高度重新审视一下自己的C++编程水平。</p>
<p>结束语：</p>
<p>在学习编程的过程中一定要注意多实践！学习时到专业论坛同大家讨论是个不错的办法，你会找到许多热心的朋友与您一起学习，能通过学习编程交些朋友不是更好吗？最后，希望您能成为优秀的程序设计师，为中国软件的发展贡献一份力量！</p>
]]></content:encoded>
			<wfw:commentRss>http://column.ibeifeng.com/allg0/2008092552.shtml/feed</wfw:commentRss>
		</item>
		<item>
		<title>大学生在技术面前我们如何去看待社会认证</title>
		<link>http://column.ibeifeng.com/allg0/2008092357.shtml</link>
		<comments>http://column.ibeifeng.com/allg0/2008092357.shtml#comments</comments>
		<pubDate>Tue, 23 Sep 2008 15:13:16 +0000</pubDate>
		<dc:creator>风风</dc:creator>
		
		<category><![CDATA[综合]]></category>

		<category><![CDATA[大学生]]></category>

		<category><![CDATA[技术]]></category>

		<category><![CDATA[认证]]></category>

		<guid isPermaLink="false">http://column.ibeifeng.com/?p=57</guid>
		<description><![CDATA[社会是一个庞大的体系家族，在社会这个庞大的体现中，如何去很好的认识各行各业的价值是一个很重要的问题，也是一个值得我们思考的问题。
IT行业是一个很庞大的家族，IT行业中，技术是一个谈的最多的问题，面试中，面试官和您之间也许会有这样一段对话.
面试官：您会哪些技术？
you:我会SSH 3大框架，我会AJAX技术，我还有oracle,DB2数据库。
面试官：不错。下午3：00来公司准备机试。准备综合运行用3个框架整合一个示例程序。

上面这段简短的对话说明了动手能力是很重要的，现在大学生看重的很多都是看重的认证，大学期间拼命的考证，其实证书只是一个小小的体现， 你们在那些“认证”，“编程高手”、“大师”眼中，只是一个学习成绩好，拿过三次二等奖学金，对编程一窍不通，甚至连系统都不会装的那种高分低能。认证们、大师们会 asp.net，会VB,会VC，一上来就用JBullder而不是JCreator编写Java程序。当大师们看到你在用Delphi设计一个系统时，他们惊奇万分，因为在他们心目中，“成绩好的”一辈子都只能在Turbo C 2.0下，面对着可爱的蓝屏，编写“原始”的二分查找，希尔排序。更重要的，“大师”们怀揣在他们看来，比毕业证、学位证，管用几百倍的国际认证！于是乎，讲可以不听，课可以不上，怀揣着MSCE、CCNA数据结构可以考40分，操作系统可以不及格。手捧一本ASP，在一群埋头苦研算法的同学们面前炫耀，却不知道ASP是Active Sever Page的缩写。本来我们这两派井水不犯河水，可是“认证”们到处宣扬什么数据结构没用，现在操作系统都用Windows Sever 2003了，学那些过时的操作系统有什么用？于是，抨大学教育之陈旧，击高等教育之无用。于是，“认证”们高唱：“敢问路在何方~，路在认证。”这简直就是谬论！对我们这些大四的学生来说，毕竟接触计算机有几年了，大家心中自有公断，即使有同年狂热的去追求认证，也绝对有他们明确的目标。但是对大一，大二的低年级同学就不同了，他们正处于被“认证”们所鄙视的基础学习阶段，如果被误导，丢了C++,丢了数据结构，操作系统，以后怎么活呀？他们怎么去动手写程序呢，认证必然是很重要，动手能力才是真正的上帝，在这样一个拼搏的社会中，要懂的侧重点才是以后生活之本。
我也不是完全否认”认证“，承认在现在的社会重，很多企业招聘，都要看认证，所以，为了就业，可以去考考，不过其目的，只在于就业方便一些罢了，倒不寄希望能学到什么东西。所以建议大家考认证也好，要考就考那种具有实战技能的认证，如OracleDBA之类的，非纸上谈兵型的，国外的认证还是可以考考的，只有自己做好了每步，选择好自己的脚下，才能成为一个真正能文能武的人！
]]></description>
			<content:encoded><![CDATA[<p>社会是一个庞大的体系家族，在社会这个庞大的体现中，如何去很好的认识各行各业的价值是一个很重要的问题，也是一个值得我们思考的问题。</p>
<p>IT行业是一个很庞大的家族，IT行业中，技术是一个谈的最多的问题，面试中，面试官和您之间也许会有这样一段对话.<br />
面试官：您会哪些技术？</p>
<p>you:我会SSH 3大框架，我会AJAX技术，我还有oracle,DB2数据库。</p>
<p>面试官：不错。下午3：00来公司准备机试。准备综合运行用3个框架整合一个示例程序。</p>
<p><span id="more-57"></span></p>
<p>上面这段简短的对话说明了动手能力是很重要的，现在大学生看重的很多都是看重的认证，大学期间拼命的考证，其实证书只是一个小小的体现， 你们在那些“认证”，“编程高手”、“大师”眼中，只是一个学习成绩好，拿过三次二等奖学金，对编程一窍不通，甚至连系统都不会装的那种高分低能。认证们、大师们会 asp.net，会VB,会VC，一上来就用JBullder而不是JCreator编写Java程序。当大师们看到你在用Delphi设计一个系统时，他们惊奇万分，因为在他们心目中，“成绩好的”一辈子都只能在Turbo C 2.0下，面对着可爱的蓝屏，编写“原始”的二分查找，希尔排序。更重要的，“大师”们怀揣在他们看来，比毕业证、学位证，管用几百倍的国际认证！于是乎，讲可以不听，课可以不上，怀揣着MSCE、CCNA数据结构可以考40分，操作系统可以不及格。手捧一本ASP，在一群埋头苦研算法的同学们面前炫耀，却不知道ASP是Active Sever Page的缩写。本来我们这两派井水不犯河水，可是“认证”们到处宣扬什么数据结构没用，现在操作系统都用Windows Sever 2003了，学那些过时的操作系统有什么用？于是，抨大学教育之陈旧，击高等教育之无用。于是，“认证”们高唱：“敢问路在何方~，路在认证。”这简直就是谬论！对我们这些大四的学生来说，毕竟接触计算机有几年了，大家心中自有公断，即使有同年狂热的去追求认证，也绝对有他们明确的目标。但是对大一，大二的低年级同学就不同了，他们正处于被“认证”们所鄙视的基础学习阶段，如果被误导，丢了C++,丢了数据结构，操作系统，以后怎么活呀？他们怎么去动手写程序呢，认证必然是很重要，动手能力才是真正的上帝，在这样一个拼搏的社会中，要懂的侧重点才是以后生活之本。</p>
<p>我也不是完全否认”认证“，承认在现在的社会重，很多企业招聘，都要看认证，所以，为了就业，可以去考考，不过其目的，只在于就业方便一些罢了，倒不寄希望能学到什么东西。所以建议大家考认证也好，要考就考那种具有实战技能的认证，如OracleDBA之类的，非纸上谈兵型的，国外的认证还是可以考考的，只有自己做好了每步，选择好自己的脚下，才能成为一个真正能文能武的人！</p>
]]></content:encoded>
			<wfw:commentRss>http://column.ibeifeng.com/allg0/2008092357.shtml/feed</wfw:commentRss>
		</item>
		<item>
		<title>由一个C++版本猜数字游戏引起的效率问题</title>
		<link>http://column.ibeifeng.com/allg0/2008092344.shtml</link>
		<comments>http://column.ibeifeng.com/allg0/2008092344.shtml#comments</comments>
		<pubDate>Tue, 23 Sep 2008 11:33:24 +0000</pubDate>
		<dc:creator>风风</dc:creator>
		
		<category><![CDATA[C++]]></category>

		<category><![CDATA[效率]]></category>

		<guid isPermaLink="false">http://column.ibeifeng.com/?p=44</guid>
		<description><![CDATA[一直以来C++，C++以其优越的性能，得到了很多编程人员的爱好，但是C++其杰出的一点主要是其效率问题，但是如果不能很好的运用，反而会取得很差的效果，适得其反，因此如何去取得一个好的算法成效，是一个编程者的选择，本文主要通过一个小游戏的开发，从一个点上进行切入分析程序的效率所在！

#include
#include
#include
#include
#include
using std::string;
using std::endl;
using std::cin;
using std::cout;
int main()
{
int min,max;
double k=0;
string text="请输入你要猜测的数字的范围";
string text1="猜数字游戏";
cout&#60;&#60;std::setw(50)&#60;&#60;text1&#60;&#60;endl;
cout&#60;&#60;std::setw(60)&#60;&#60;text;
cout&#60;&#60;endl&#60;&#62;";
cin&#62;&#62;min;
cout&#60;&#60;endl&#60;&#60;std::setw(10)&#60;&#62;";
cin&#62;&#62;max;
srand(time(0));
int range=max-min+1;
int date=rand()/100%range+min;
int answer=date;
cout&#60;&#60;endl&#60;&#62;";
cin&#62;&#62;date;
if(max&#62;date&#38;&#38;mink)
{
k=(k+max)/2;
if(k==date)
cout&#60;&#60;std::setw(20)&#60;&#60;"恭喜你,答对了"&#60;&#60;endl&#60;&#60;date;
else
cout&#60;&#60;std::setw(10)&#60;&#60;"对不起,系统出错!"&#60;&#60;endl;
}
else
{
do
{
k=(k+min)/2;
}
while(k==date);
cout&#60;&#60;"恭喜你,答对了"&#60;&#60;endl&#60;&#60;date;
}
}
else
{
cout&#60;&#60;endl&#60;&#60;"对不起你猜测的数字不正确^-^"
&#60;&#62;"&#60;&#60;answer&#60;&#60;endl;
cout&#60;&#60;" 下次再来哦！祝贺你下次成功! "&#60;&#60;endl;
cout&#60;&#60;std::setw(400)&#60;&#60;"制作人----冬瓜";
return 0;
}
return 0;
}
上面这段程序没有去采用任何的方式进行程序的优化，只是在程序的核心部分采用了一个二分法去实现数字的搜索，虽然从一定程度上面能够达到高效率，但是在整体上面运行效果方面却有点搪塞，下文采用二叉树的整数划分树形先根序搜索方式去写了一段程序，程度代码如下：
#include
#defineMAX10000000
#defineSL25
int t[MAX], m = 0, num = 0;
void hf(int n, int *t)//整数划分生成树的线性表存储的函数;
{
int i;
if(n) {
for(i = 1; i &#60;= n; i++) {
t[m++] = i;
hf(n-i,t);
}
}
else {
t[m++] = &#8216;#&#8217;;
num++;
}
}
void print(int *t)//打印整数划分生成树的线性表;
{
int l;
printf(&#8221;Array T is:\n&#8221;);
for(l = 0; l &#62;&#8221;,k);
for(i = 0; i &#60; [...]]]></description>
			<content:encoded><![CDATA[<p>一直以来C++，C++以其优越的性能，得到了很多编程人员的爱好，但是C++其杰出的一点主要是其效率问题，但是如果不能很好的运用，反而会取得很差的效果，适得其反，因此如何去取得一个好的算法成效，是一个编程者的选择，本文主要通过一个小游戏的开发，从一个点上进行切入分析程序的效率所在！</p>
<p><span id="more-44"></span></p>
<p><code>#include<br />
#include<br />
#include<br />
#include<br />
#include<br />
using std::string;<br />
using std::endl;<br />
using std::cin;<br />
using std::cout;<br />
int main()<br />
{<br />
int min,max;<br />
double k=0;<br />
string text="请输入你要猜测的数字的范围";<br />
string text1="猜数字游戏";<br />
cout&lt;&lt;std::setw(50)&lt;&lt;text1&lt;&lt;endl;<br />
cout&lt;&lt;std::setw(60)&lt;&lt;text;<br />
cout&lt;&lt;endl&lt;&gt;";<br />
cin&gt;&gt;min;<br />
cout&lt;&lt;endl&lt;&lt;std::setw(10)&lt;&gt;";<br />
cin&gt;&gt;max;<br />
srand(time(0));<br />
int range=max-min+1;<br />
int date=rand()/100%range+min;<br />
int answer=date;<br />
cout&lt;&lt;endl&lt;&gt;";<br />
cin&gt;&gt;date;<br />
if(max&gt;date&amp;&amp;mink)<br />
{<br />
k=(k+max)/2;<br />
if(k==date)<br />
cout&lt;&lt;std::setw(20)&lt;&lt;"恭喜你,答对了"&lt;&lt;endl&lt;&lt;date;<br />
else<br />
cout&lt;&lt;std::setw(10)&lt;&lt;"对不起,系统出错!"&lt;&lt;endl;<br />
}<br />
else<br />
{<br />
do<br />
{<br />
k=(k+min)/2;<br />
}<br />
while(k==date);<br />
cout&lt;&lt;"恭喜你,答对了"&lt;&lt;endl&lt;&lt;date;<br />
}<br />
}<br />
else<br />
{<br />
cout&lt;&lt;endl&lt;&lt;"对不起你猜测的数字不正确^-^"<br />
&lt;&gt;"&lt;&lt;answer&lt;&lt;endl;<br />
cout&lt;&lt;" 下次再来哦！祝贺你下次成功! "&lt;&lt;endl;<br />
cout&lt;&lt;std::setw(400)&lt;&lt;"制作人----冬瓜";<br />
return 0;<br />
}<br />
return 0;<br />
}</code><br />
上面这段程序没有去采用任何的方式进行程序的优化，只是在程序的核心部分采用了一个二分法去实现数字的搜索，虽然从一定程度上面能够达到高效率，但是在整体上面运行效果方面却有点搪塞，下文采用二叉树的整数划分树形先根序搜索方式去写了一段程序，程度代码如下：<br />
<code>#include<br />
#defineMAX10000000<br />
#defineSL25<br />
int t[MAX], m = 0, num = 0;<br />
void hf(int n, int *t)//整数划分生成树的线性表存储的函数;<br />
{<br />
int i;<br />
if(n) {<br />
for(i = 1; i &lt;= n; i++) {<br />
t[m++] = i;<br />
hf(n-i,t);<br />
}<br />
}<br />
else {<br />
t[m++] = &#8216;#&#8217;;<br />
num++;<br />
}<br />
}<br />
void print(int *t)//打印整数划分生成树的线性表;<br />
{<br />
int l;<br />
printf(&#8221;Array T is:\n&#8221;);<br />
for(l = 0; l &gt;&#8221;,k);<br />
for(i = 0; i &lt; len; i++)<br />
printf(&#8221; %d&#8221;, S[i]);<br />
printf(&#8221;\n&#8221;);<br />
k++;<br />
}<br />
void scan(int *t)//扫描存储树的线性表生成可识别的组合结果;<br />
{<br />
int S[SL] = {0}, S1[SL] = {0}, S2[SL] = {0};<br />
int i, leap = 1, top = 0, top1 = 0, top2 = 0;<br />
int z1 = 0, z2 = 0;<br />
for(i = 0; i &lt; m; i++) {<br />
if(leap) {<br />
if(t[i] != &#8216;#&#8217;)<br />
S[top++] = t[i];<br />
else {<br />
leap = 0;<br />
print_s(S,top);<br />
}<br />
}<br />
else {<br />
if(t[i] != &#8216;#&#8217;) {<br />
S1[top1] = t[i];<br />
z1 = z1 + S1[top1];<br />
top1++;<br />
}<br />
else {<br />
while(z1 != z2) {<br />
S2[top2] = S[--top];<br />
S[top] = 0;<br />
z2 = z2 + S2[top2];<br />
S2[top2] = 0;<br />
top2++;<br />
}<br />
top2 = 0;<br />
while(top1) {<br />
S2[top2++] = S1[--top1];<br />
S1[top1] = 0;<br />
}<br />
while(top2) {<br />
S[top++] = S2[--top2];<br />
S2[top2] = 0;<br />
}<br />
print_s(S,top);<br />
z1 = z2 = 0;<br />
}<br />
}<br />
}<br />
}<br />
int main()//整数划分主函数;<br />
{<br />
int n;<br />
printf(&#8221;Enter n:&#8221;);<br />
scanf(&#8221;%d&#8221;,&amp;n);<br />
hf(n,t);<br />
print(t);<br />
scan(t);<br />
return 0;<br />
}</code><br />
两段程序对比后，读者可以仔细的研究一下，程度2采用一个整数划分树形先根序搜索的方式去完成了，程序才代码的美观性，效率性方面可以看出，其远远超过代码1的执行效率，主要其在优化方面做的很好，达到了一个健壮的效果。<br />
结束语:本文虽然为从算法执行的时间复杂度上面去分析整个程序，但读者可以看出，2个同样的程序，在运用不同算法执行后，其真正的效率问题也就无形中显示出来了。</p>
]]></content:encoded>
			<wfw:commentRss>http://column.ibeifeng.com/allg0/2008092344.shtml/feed</wfw:commentRss>
		</item>
		<item>
		<title>谈谈#include和#include&#8221;stdio.h&#8221;的效率问题</title>
		<link>http://column.ibeifeng.com/allg0/2008092337.shtml</link>
		<comments>http://column.ibeifeng.com/allg0/2008092337.shtml#comments</comments>
		<pubDate>Tue, 23 Sep 2008 07:14:14 +0000</pubDate>
		<dc:creator>风风</dc:creator>
		
		<category><![CDATA[C++]]></category>

		<category><![CDATA[效率]]></category>

		<guid isPermaLink="false">http://column.ibeifeng.com/?p=37</guid>
		<description><![CDATA[一直以来，C/C++在程序语言发展过程中占据了很大的地位，进入大学，一个计算机的系的学生一般都是先接触这两种语言，可是很多新手反映，在学习这2种语言的过程中有很多地方困惑，如效率问题上面，效率问题是一个很重要的问题，一般人都认为算法的使用是一个很重要的一点，其实在其他各方面也值得大家去思考一下，本文主要围绕#include<stdio.h>和#include"stdio.h"在效率问题上面进行一个探讨。
首先解释一下stdio.h是什么。stdio.h就是指“standard input&#038;output' 意思就是说标准输入输出头文件！ 所以了，用到标准输入输出函数时，就要调用这个头文件！ 原程序为：/* * stdio.h * This file has no copyright assigned and is placed in the Public Domain. * This file is a part of the mingwruntime package. *
stdio.h就是指“standard input&#038;output" 
　意思就是说标准输入输出头文件！ ]]></description>
			<content:encoded><![CDATA[<p>一直以来，C/C++在程序语言发展过程中占据了很大的地位，进入大学，一个计算机的系的学生一般都是先接触这两种语言，可是很多新手反映，在学习这2种语言的过程中有很多地方困惑，如效率问题上面，效率问题是一个很重要的问题，一般人都认为算法的使用是一个很重要的一点，其实在其他各方面也值得大家去思考一下，本文主要围绕#include和#include&#8221;stdio.h&#8221;在效率问题上面进行一个探讨。</p>
<p><span id="more-37"></span></p>
<p>首先解释一下stdio.h是什么。stdio.h就是指“standard input&amp;output&#8217; 意思就是说标准输入输出头文件！ 所以了，用到标准输入输出函数时，就要调用这个头文件！ 原程序为：/* * stdio.h * This file has no copyright assigned and is placed in the Public Domain. * This file is a part of the mingwruntime package. *<br />
stdio.h就是指“standard input&amp;output&#8221;</p>
<p>意思就是说标准输入输出头文件！</p>
<p>所以了，用到标准输入输出函数时，就要调用这个头文件！这个头文件的位置在哪呢，有很多人会不解的问？<br />
首先解释一下：库文件又分为两种，一种是标准库文件，一种就是自己写的库文件，其实这2种库文件直接关系到效率问题，如果不能很好的去将2种库文件使用上分开，就直接影响到效率，其实这个效率主要体现在一个头文件的使用上面。<br />
下面分别解释这两种头文件的使用：</p>
<p>如果您调用标准库函数的话就用#include 这种形式，可以提高速度，因为使用这种形式的话，在C/C++的编译系统会首先查找标准函数库，而这个stdio.h真巧也是在标准函数库中，因此对用户来说，这种查找能很好的找到用户需要的函数库，假如您使用#include&#8221;stdio.h&#8221;其实这种带来的只是效率的降低，因为当编译系统查找过程中，他会第一个去查找系统中用户自己编写的函数库，其实这个并不在里面，从一定程度上面降低了效率，最后编译系统还是需要去标准库中查找。</p>
<p>其实对一个新手来说，效率问题感觉很遥远，但对于一个学习计算机的高手来说，他最注重的会是系统运行的效率，因为众所皆知，C/C++是一种高效率的程序设计语言，在众多的底层开发中，都是以C/C++作为主导语言，因此在开发一个软件过程中，他的效率可想而知，如果一个开发人员，懂的在系统原有的效率上面再加一层程序运行的效率，我想整个程序就像一匹野马一样，高效率的运行下去。</p>
<p>因此本文从效率问题上面探讨出头文件方面选择的一个重点问题，需要新手去很好的掌握，做开发，要从一点一点的去注意效率，才能达到最终的效果，注重效率就是注重程序开发的一切，从头文件开始，写出精彩的每行代码！</p>
]]></content:encoded>
			<wfw:commentRss>http://column.ibeifeng.com/allg0/2008092337.shtml/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
