??xml version="1.0" encoding="utf-8" standalone="yes"?>午夜精品久久久久,久久亚洲国产成人影院,99久久99久久精品国产片果冻 http://www.shnenglu.com/tiger7/category/13163.htmlzh-cnSat, 09 Jun 2012 16:24:34 GMTSat, 09 Jun 2012 16:24:34 GMT60C++ Primer 学习W记Q五Q?---- W三?标准库类型(2Q?/title><link>http://www.shnenglu.com/tiger7/articles/175807.html</link><dc:creator>tiger7</dc:creator><author>tiger7</author><pubDate>Sat, 09 Jun 2012 13:10:00 GMT</pubDate><guid>http://www.shnenglu.com/tiger7/articles/175807.html</guid><wfw:comment>http://www.shnenglu.com/tiger7/comments/175807.html</wfw:comment><comments>http://www.shnenglu.com/tiger7/articles/175807.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tiger7/comments/commentRss/175807.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tiger7/services/trackbacks/175807.html</trackback:ping><description><![CDATA[     摘要: 一、知识点1、命名空间的using声明2、标准库stringcd3、标准库vectorcd4、P代器?、标准库bitsetcd二、要?nbsp;     3、标准库vectorcd  初始化vector对象的方? vector<T> v1 v1保存Tcd的对象。采用T的默认构造函...  <a href='http://www.shnenglu.com/tiger7/articles/175807.html'>阅读全文</a><img src ="http://www.shnenglu.com/tiger7/aggbug/175807.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tiger7/" target="_blank">tiger7</a> 2012-06-09 21:10 <a href="http://www.shnenglu.com/tiger7/articles/175807.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++ Primer 学习W记Q四Q?---- W三?标准库类型(1Q?/title><link>http://www.shnenglu.com/tiger7/articles/151575.html</link><dc:creator>tiger7</dc:creator><author>tiger7</author><pubDate>Tue, 22 May 2012 13:57:00 GMT</pubDate><guid>http://www.shnenglu.com/tiger7/articles/151575.html</guid><wfw:comment>http://www.shnenglu.com/tiger7/comments/151575.html</wfw:comment><comments>http://www.shnenglu.com/tiger7/articles/151575.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tiger7/comments/commentRss/151575.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tiger7/services/trackbacks/151575.html</trackback:ping><description><![CDATA[<blockquote> <p><strong>一、知识点<br /></strong>     <span style="color: #ff0000"> 1、命名空间的using声明</span><br /><span style="color: #ff0000">      2、标准库stringcd</span><br />      3、标准库vectorcd<br />      4、P代器?br />      5、标准库bitsetcd<br /><br /><span style="color: #ff0000"><strong style="color: #000000">二、要?/strong></span><br />      1、命名空间的using声明<br />               使用using声明可以在不需要加前缀namespace_nameQ:的情况下讉K命名I间中的名字Q格式如Q?span style="color: #0000ff">using namespace::name;</span><br /><br />      2、标准库stringcd<br /></p> <blockquote> <table style="border-bottom: medium none; border-left: medium none; border-collapse: collapse; border-top: medium none; border-right: medium none" border="1" rules="groups" cellspacing="0" cellpadding="0"> <tbody> <tr> <td style="border-bottom: black 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; padding-right: 5.4pt; border-top: black 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" colspan="2"> <p align="center"><strong><span style="color: black">string</span></strong><strong><span style="font-family: 宋体; color: black">对象初始化方?/span><span style="color: black"></span></strong></p></td></tr> <tr> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 213.05pt; padding-right: 5.4pt;background: silver; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="284"> <p><strong><span style="color: black">string s1;</span></strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; padding-right: 5.4pt;background: silver; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top"> <p><span style="font-family: 宋体; color: #0000ff">默认构造函敎ͼ</span><span style="color: #0000ff">s1</span><span style="font-family: 宋体; color: #0000ff">为空?/span></p></td></tr> <tr> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 213.05pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="284"> <p><strong><span style="color: black">string s2(s1)</span></strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 296px; padding-right: 5.4pt; height: 28px; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top"> <p><span style="font-family: 宋体; color: #0000ff">?/span><span style="color: #0000ff">s2</span><span style="font-family: 宋体; color: #0000ff">初始化ؓ</span><span style="color: #0000ff">s1</span><span style="font-family: 宋体; color: #0000ff">的一个副?/span></p></td></tr> <tr> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 213.05pt; padding-right: 5.4pt;background: silver; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="284"> <p><strong><span style="color: black">string s3(“Value”);</span></strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; padding-right: 5.4pt;background: silver; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top"> <p><span style="font-family: 宋体; color: #0000ff">?/span><span style="color: #0000ff">s3</span><span style="font-family: 宋体; color: #0000ff">初始化ؓ一个字W串字面值的副本</span></p></td></tr> <tr> <td style="border-bottom: black 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 213.05pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="284"> <p><strong><span style="color: black">string s4(n, ‘c’);</span></strong></p></td> <td style="border-bottom: black 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top"> <p><span style="font-family: 宋体; color: #0000ff">?/span><span style="color: #0000ff">s4</span><span style="font-family: 宋体; color: #0000ff">初始化ؓ字符</span><span style="color: #0000ff">‘c’</span><span style="font-family: 宋体; color: #0000ff">?/span><span style="color: #0000ff">n</span><span style="font-family: 宋体; color: #0000ff">个副?/span></p></td></tr></tbody></table></blockquote> <p>      Q?Q、stringcd的输入操作符和getline函数<br />               stringcd的输入操作符Q读取ƈ忽略开头所有的I白字符Q空根{换行符、制表符Q;d字符直到再次遇到I白字符Q读取结束?br />               getline函数Q包?个参敎ͼ输入对象和string对象Q读取内容直到碰到换行符Q但q不包括换行W(它不忽略开头的换行W,如果有,那么q次的读取内容ؓI)<br /><br />      Q?Q、string::size_typecd<br />               string::size_type是一U与机器无关的、无W号的整型类型(intQlong都可能)Q它可以保存Lstring对象的长度?br /><br />      Q?Q、与字符串字面D接的注意?br /></p> <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 90.94%; padding-right: 5px; height: 141px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" /><span style="color: #0000ff">string</span><span style="color: #000000"> s1 </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">string</span><span style="color: #000000"> s2 </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">world</span><span style="color: #000000">"</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">string</span><span style="color: #000000"> s3 </span><span style="color: #000000">=</span><span style="color: #000000"> s1 </span><span style="color: #000000">+</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">;       </span><span style="color: #008000">//</span><span style="color: #008000"> ok</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">string</span><span style="color: #000000"> s4 </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello</span><span style="color: #000000">"</span><span style="color: #000000"> </span><span style="color: #000000">+</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">;  </span><span style="color: #008000">//</span><span style="color: #008000"> errorQ不?个字面串字面值相?/span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" /></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">string</span><span style="color: #000000"> s5 </span><span style="color: #000000">=</span><span style="color: #000000"> s1 </span><span style="color: #000000">+</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000"> </span><span style="color: #000000">+</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">world</span><span style="color: #000000">"</span><span style="color: #000000">;  </span><span style="color: #008000">//</span><span style="color: #008000"> okQs1? "相加后还是一个新的string对象Q可以和后面的相?/span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">string</span><span style="color: #000000"> s6 </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello</span><span style="color: #000000">"</span><span style="color: #000000"> </span><span style="color: #000000">+</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000"> </span><span style="color: #000000">+</span><span style="color: #000000"> s2;  </span><span style="color: #008000">//</span><span style="color: #008000"> errorQ前?个就相当于字面串字面值相?br /><img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" /></span></div> <div><br />      Q?Q、string对象中字W的处理<br />               主要是用到cctype头文件中定义的函敎ͼ如下Q?nbsp; <blockquote> <table style="border-bottom: medium none; border-left: medium none; border-collapse: collapse; border-top: medium none; border-right: medium none" border="1" cellspacing="0" cellpadding="0"> <tbody> <tr> <td style="border-bottom: medium none; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt;background: #8064a2; border-top: #8064a2 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p align="center"><strong><span style="color: #cce8cf">Cctype</span></strong><strong><span style="font-family: 宋体; color: #cce8cf">定义的函?/span><span style="color: #cce8cf"></span></strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt;background: #8064a2; border-top: #8064a2 1pt solid; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><strong> </strong></p></td></tr> <tr> <td style="border-bottom: #8064a2 1pt solid; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>isalnum(c)</strong></p></td> <td style="border-bottom: #8064a2 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是字母和数字Q则?/span>true</p></td></tr> <tr> <td style="border-bottom: medium none; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>isalpha(c)</strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: medium none; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是字母,则ؓ</span>true</p></td></tr> <tr> <td style="border-bottom: #8064a2 1pt solid; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>isdigit(c)</strong></p></td> <td style="border-bottom: #8064a2 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是数字,则ؓ</span>true</p></td></tr> <tr> <td style="border-bottom: medium none; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>isxdigit(c)</strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: medium none; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是十六进制数Q则?/span>true</p></td></tr> <tr> <td style="border-bottom: #8064a2 1pt solid; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>iscntrl(c)</strong></p></td> <td style="border-bottom: #8064a2 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是控制字W,则ؓ</span>true</p></td></tr> <tr> <td style="border-bottom: medium none; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>ispunct(c)</strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: medium none; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是标点符P则ؓ</span>true</p></td></tr> <tr> <td style="border-bottom: #8064a2 1pt solid; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>isspace(c)</strong></p></td> <td style="border-bottom: #8064a2 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是空白字W,则ؓ</span>true</p></td></tr> <tr> <td style="border-bottom: medium none; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>isprint(c)</strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: medium none; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是可打印的字W,则ؓ</span>true</p></td></tr> <tr> <td style="border-bottom: #8064a2 1pt solid; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>isgraph(c)</strong></p></td> <td style="border-bottom: #8064a2 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">不是I格Q但可以打印Q则?/span>true</p></td></tr> <tr> <td style="border-bottom: medium none; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>islower(c)</strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: medium none; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是小写字母,则ؓ</span>true</p></td></tr> <tr> <td style="border-bottom: #8064a2 1pt solid; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>isupper(c)</strong></p></td> <td style="border-bottom: #8064a2 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是大写字母,则ؓ</span>true</p></td></tr> <tr> <td style="border-bottom: medium none; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: medium none; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>tolower(c)</strong></p></td> <td style="border-bottom: medium none; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: medium none; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是大写字母,则返回其写字母形式Q否则直接返?/span>c</p></td></tr> <tr> <td style="border-bottom: #8064a2 1pt solid; border-left: #8064a2 1pt solid; padding-bottom: 0cm; padding-left: 5.4pt; width: 111.75pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: medium none; padding-top: 0cm" valign="top" width="149"> <p><strong>toupper(c)</strong></p></td> <td style="border-bottom: #8064a2 1pt solid; border-left: medium none; padding-bottom: 0cm; padding-left: 5.4pt; width: 314.35pt; padding-right: 5.4pt; border-top: #8064a2 1pt solid; border-right: #8064a2 1pt solid; padding-top: 0cm" valign="top" width="419"> <p><span style="font-family: 宋体">如果</span>c<span style="font-family: 宋体">是大写字母,则返回其写字母形式Q否则直接返?/span>c</p></td></tr></tbody></table></blockquote><br /></div> <p>   </p></blockquote> <img src ="http://www.shnenglu.com/tiger7/aggbug/151575.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tiger7/" target="_blank">tiger7</a> 2012-05-22 21:57 <a href="http://www.shnenglu.com/tiger7/articles/151575.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++ Primer 学习W记Q三Q?---- W二?变量和基本类型(2Q?/title><link>http://www.shnenglu.com/tiger7/articles/121809.html</link><dc:creator>tiger7</dc:creator><author>tiger7</author><pubDate>Mon, 20 Jun 2011 13:53:00 GMT</pubDate><guid>http://www.shnenglu.com/tiger7/articles/121809.html</guid><wfw:comment>http://www.shnenglu.com/tiger7/comments/121809.html</wfw:comment><comments>http://www.shnenglu.com/tiger7/articles/121809.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tiger7/comments/commentRss/121809.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tiger7/services/trackbacks/121809.html</trackback:ping><description><![CDATA[<strong style>一、知识点</strong><br /> <span style="color: #000000">      1、基本内|类型(术cd和voidcdQ?br />       2、字面值常量和变量</span><br /> <span style="color: #ff0000">      3、const限定W?br />       4、引?br />       5、typedef名字<br />       6、枚?br />       7、类cd<br />       8、头文g<br /> <br /> <strong style="color: #000000">二、要?/strong></span><br />       1、const限定W?br />            数Q在上下文中没有体现出来Q好像这个数是魔术般的从IZ出现的。如下面?#8220;512”q个?nbsp;           <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img id="Codehighlighter1_31_44_Open_Image" onclick="this.style.display='none'; Codehighlighter1_31_44_Open_Text.style.display='none'; Codehighlighter1_31_44_Closed_Image.style.display='inline'; Codehighlighter1_31_44_Closed_Text.style.display='inline';" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_31_44_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_31_44_Closed_Text.style.display='none'; Codehighlighter1_31_44_Open_Image.style.display='inline'; Codehighlighter1_31_44_Open_Text.style.display='inline';" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif"><span style="color: #0000ff">for</span><span style="color: #000000"> (</span><span style="color: #0000ff">int</span><span style="color: #000000"> i </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">0</span><span style="color: #000000">; i </span><span style="color: #000000">!=</span><span style="color: #000000"> </span><span style="color: red">512</span><span style="color: #000000">; </span><span style="color: #000000">++</span><span style="color: #000000">i) </span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_31_44_Closed_Text"><img alt="" src="http://www.shnenglu.com/Images/dot.gif" /></span><span id="Codehighlighter1_31_44_Open_Text"><span style="color: #000000">{<br /> <img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" />   </span><span style="color: #008000">//</span><span style="color: #008000"><img alt="" src="http://www.shnenglu.com/Images/dot.gif" />..</span><span style="color: #008000"><br /> <img alt="" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" /></span><span style="color: #000000">}</span></span></div> <br />            使用const限定W需注意Q?br />            Q?Q、定义的const的变量仍难是一个左|但是q个左值是不可修改的;且在定义时必d始化Q?br />            Q?Q、const变量默认都是文g局部的Q如果想被其他文件访问,必须在前面加入extern。如Q? <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" alt="" /><span style="color: #000000">file_1.cpp:<br /> <img align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" alt="" /></span><span style="color: #0000ff">extern</span><span style="color: #000000"> </span><span style="color: #0000ff">const</span><span style="color: #000000"> </span><span style="color: #0000ff">int</span><span style="color: #000000"> bufszie </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">512</span><span style="color: #000000">;   </span><span style="color: #008000">//</span><span style="color: #008000"> 定义Q需要赋初?/span><span style="color: #008000"><br /> <img align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" alt="" /></span><span style="color: #000000"><br /> <img align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" alt="" />fiel_2.cpp:<br /> <img align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" alt="" /></span><span style="color: #0000ff">extern</span><span style="color: #000000"> </span><span style="color: #0000ff">const</span><span style="color: #000000"> </span><span style="color: #0000ff">int</span><span style="color: #000000"> bufsize;<br /> <img align="top" src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" alt="" /><img src="http://www.shnenglu.com/Images/dot.gif" alt="" />.<br /> <img id="Codehighlighter1_132_143_Open_Image" onclick="this.style.display='none'; Codehighlighter1_132_143_Open_Text.style.display='none'; Codehighlighter1_132_143_Closed_Image.style.display='inline'; Codehighlighter1_132_143_Closed_Text.style.display='inline';" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_132_143_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_132_143_Closed_Text.style.display='none'; Codehighlighter1_132_143_Open_Image.style.display='inline'; Codehighlighter1_132_143_Open_Text.style.display='inline';" align="top" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: #0000ff">for</span><span style="color: #000000"> (</span><span style="color: #0000ff">int</span><span style="color: #000000"> i </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">0</span><span style="color: #000000">; i </span><span style="color: #000000">!=</span><span style="color: #000000"> bufsizeQ?++i) </span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_132_143_Closed_Text"><img src="http://www.shnenglu.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_132_143_Open_Text"><span style="color: #000000">{<br /> <img align="top" src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" alt="" />  </span><span style="color: #008000">//</span><span style="color: #008000"><img src="http://www.shnenglu.com/Images/dot.gif" alt="" />.</span><span style="color: #008000"><br /> <img align="top" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" alt="" /></span><span style="color: #000000">}</span></span></div> <br />        2、引?br /> <p>           引用QreferenceQ就是对象的另一个名Uͼ非congst引用只能l定C该引用相同类型的Ҏ上,const引用可以l定C同但相关的类型对象或l定到右倹{?/p> <p>           重点Qconst引用Q指向const对象的引用? <div style="font-size: 13px; border-top-color: #cccccc; border-left-color: #cccccc; border-right-color: #cccccc; border-bottom-color: #cccccc; border-top-width: 1px; border-left-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-top-style: solid; border-left-style: solid; border-right-style: solid; border-bottom-style: solid; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; padding-top: 4px; width: 98%; background-color: #eeeeee"><span style="color: #000000; ">1</span><span style="color: #000000; ">、赋?br /> </span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> ival </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">1024</span><span style="color: #000000; ">;<br /> </span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">&</span><span style="color: #000000; ">refVal </span><span style="color: #000000; ">=</span><span style="color: #000000; "> ival;   </span><span style="color: #008000; ">//</span><span style="color: #008000; "> q个是正的赋?/span><span style="color: #008000; "><br /> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">&</span><span style="color: #000000; ">ref2 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> ival;              </span><span style="color: #008000; ">//</span><span style="color: #008000"> q个是错误的赋|ref2是可以重新赋|q样Dival的g被改变,但ival是const的,所以这栯值是不允许的Q?/span><span style="color: #008000; "><br /> </span><span style="color: #000000"><br /> </span><span style="color: #000000; ">2</span><span style="color: #000000; ">、初始化<br /> </span><span style="color: #0000FF; ">double</span><span style="color: #000000; "> dval </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">42.12</span><span style="color: #000000; ">;<br /> </span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">&</span><span style="color: #000000; ">r1 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">42</span><span style="color: #000000; ">;         </span><span style="color: #008000; ">//</span><span style="color: #008000; "> 用右|字面值常量)初始?/span><span style="color: #008000; "><br /> </span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">&</span><span style="color: #000000; ">r2 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> dval;       </span><span style="color: #008000; ">//</span><span style="color: #008000; "> 用不同那个类型的对象初始化,q里的r2 = 42。如果r2不是const的话Q这样初始化是错误的?/span></div> <br /> <p>       3、typedef</p> <p>            typedef可以用来定义cd的同义词。格式ؓQtypedef + 数据cd + 标识W?/p> <p><br /> </p> <p>        4、枚举(enumQ?/p> <p>            格式Qenum enumName(l可? {enumerator1Q?enumerator2Q?..}<br /> </p> <p>           Q?Q、枚举成员都是常量表辑ּQ在~译器编译是p计算出结果的整型表达式,或整型字面值常量)Q?/p> <p>           Q?Q、默认的W一个枚举成员是0Q后面的每个枚D成员都比前一个大1Q?/p> <p>           Q?Q、枚举成员g是唯一的:enum Points { p1 = 1, p2, p3 = 2, p4}Q这其中p1=1,p2=2,p3=2,p4=3Q?/p> <p>           Q?Q、枚丄型的对象初始化或赋值时Q只能通过该类型枚丄某个成员q行?/p> <p><br /> </p> <p>       5、类cd</p> <p>           注意class和struct的区别:唯一区别Q?span style="color: #ff0000">默认情况下,struct的成员ؓpublicQclass的成员ؓprivate?/span></p> <p><br /> </p> <p>       6、头文g</p> <p>           在const变量是用帔R表达式初始化Ӟ可以它定义在头文g中;如果不是Q则不应该在头文件中定义?/p> <img src ="http://www.shnenglu.com/tiger7/aggbug/121809.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tiger7/" target="_blank">tiger7</a> 2011-06-20 21:53 <a href="http://www.shnenglu.com/tiger7/articles/121809.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>int* a与int *aQ{Q?/title><link>http://www.shnenglu.com/tiger7/articles/146072.html</link><dc:creator>tiger7</dc:creator><author>tiger7</author><pubDate>Tue, 10 May 2011 01:43:00 GMT</pubDate><guid>http://www.shnenglu.com/tiger7/articles/146072.html</guid><wfw:comment>http://www.shnenglu.com/tiger7/comments/146072.html</wfw:comment><comments>http://www.shnenglu.com/tiger7/articles/146072.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tiger7/comments/commentRss/146072.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tiger7/services/trackbacks/146072.html</trackback:ping><description><![CDATA[<p> int* a; int *a;</p> <p>q个大家看不出来区别的话那我举个例子:</p> <p>int* a[]; int (*a)[]; </p> <p><span style="color: #ff0000">前者是指针数组Q数l里每个元素是指针,后者是数组指针Q这?*a)[]指向一个数l的地址?/span></p> <p>再看下个例子:</p> <p>int* a(); int (*a)(); </p> <p><span style="color: #ff0000">前者返回一个整形指针,后者是函数指针Q指向一个函数的地址; 也就是说 int* a; a是一个整形指针型变量 int *a; a本n是指针,存储整Ş变量的地址 效果来说这两者等P可能有点晕,Ҏ下上面的例子理解下就好了?/span><span style="color: #ff0000"><br /> </span></p> <img src ="http://www.shnenglu.com/tiger7/aggbug/146072.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tiger7/" target="_blank">tiger7</a> 2011-05-10 09:43 <a href="http://www.shnenglu.com/tiger7/articles/146072.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>struct中char data[0]的用?/title><link>http://www.shnenglu.com/tiger7/articles/143388.html</link><dc:creator>tiger7</dc:creator><author>tiger7</author><pubDate>Mon, 04 Apr 2011 04:31:00 GMT</pubDate><guid>http://www.shnenglu.com/tiger7/articles/143388.html</guid><wfw:comment>http://www.shnenglu.com/tiger7/comments/143388.html</wfw:comment><comments>http://www.shnenglu.com/tiger7/articles/143388.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tiger7/comments/commentRss/143388.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tiger7/services/trackbacks/143388.html</trackback:ping><description><![CDATA[         最q在学习老师的网l代码时Q看到定义了一个如下的l构体:<br> <div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #0000ff">struct</span><span style="COLOR: #000000"> MyData <br><img id=Codehighlighter1_15_43_Open_Image onclick="this.style.display='none'; Codehighlighter1_15_43_Open_Text.style.display='none'; Codehighlighter1_15_43_Closed_Image.style.display='inline'; Codehighlighter1_15_43_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_15_43_Closed_Image onclick="this.style.display='none'; Codehighlighter1_15_43_Closed_Text.style.display='none'; Codehighlighter1_15_43_Open_Image.style.display='inline'; Codehighlighter1_15_43_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_15_43_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span>{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    int nLen;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    <span style="COLOR: red">char data[0];<br></span><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}<span style="COLOR: #000000">;</span></div>          开始没有理解红色部分的内容Q上|搜索下Q发现用处很大,记录下来?br>         <br>        <span style="COLOR: red"> 在结构中Qdata是一个数l名Q但该数l没有元素;该数l的真实地址紧随l构体MyData之后Q而这个地址是l构体后面数据的地址Q如果给q个l构体分配的内容大于q个l构体实际大,后面多余的部分就是这个data的内容)Q这U声明方法可以y妙的实现C语言里的数组扩展?br>         实际用时采取q样Q?br>         struct MyData *p = (struct MyData *)malloc(sizeof(struct MyData )+strlen(<span style="COLOR: #0000ff">str</span>))<br>         q样可以通过p->data 来操作这?span style="COLOR: #0000ff">str</span>?br><br>        <span style="COLOR: #000000"> CZQ?br> <div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #000000">#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">struct</span><span style="COLOR: #000000"> MyData <br><img id=Codehighlighter1_58_86_Open_Image onclick="this.style.display='none'; Codehighlighter1_58_86_Open_Text.style.display='none'; Codehighlighter1_58_86_Closed_Image.style.display='inline'; Codehighlighter1_58_86_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_58_86_Closed_Image onclick="this.style.display='none'; Codehighlighter1_58_86_Closed_Text.style.display='none'; Codehighlighter1_58_86_Open_Image.style.display='inline'; Codehighlighter1_58_86_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_58_86_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_58_86_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> nLen;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> data[</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">];<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}</span></span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br><img id=Codehighlighter1_101_378_Open_Image onclick="this.style.display='none'; Codehighlighter1_101_378_Open_Text.style.display='none'; Codehighlighter1_101_378_Closed_Image.style.display='inline'; Codehighlighter1_101_378_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_101_378_Closed_Image onclick="this.style.display='none'; Codehighlighter1_101_378_Closed_Text.style.display='none'; Codehighlighter1_101_378_Open_Image.style.display='inline'; Codehighlighter1_101_378_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_101_378_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_101_378_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> nLen </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> str[</span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">] </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">123456789</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Size of MyData: </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">sizeof</span><span style="COLOR: #000000">(MyData) </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    MyData </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">myData </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (MyData</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">)malloc(</span><span style="COLOR: #0000ff">sizeof</span><span style="COLOR: #000000">(MyData) </span><span style="COLOR: #000000">+</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    memcpy(myData</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">data,  str, </span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">myData's Data is: </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> myData</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">data </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    free(myData);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}</span></span></div> </span></span><br>         输出Q?br> <div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">Size of MyData: 4<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #000000">myData's Data is: 123456789</span></div>          ׃数组没有元素Q该数组在该l构体中分配占用I间Q所以sizeof(struct Mydata) = 4?br>         malloc甌的是14个字节的q箋I间Q它q回一个指针指向这14个字节,强制转换成struct INFO的时候,前面4个字节被认ؓ是Mydatal构Q后面的部分拯?#8220;123456789”的内宏V? <img src ="http://www.shnenglu.com/tiger7/aggbug/143388.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tiger7/" target="_blank">tiger7</a> 2011-04-04 12:31 <a href="http://www.shnenglu.com/tiger7/articles/143388.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Q{Qtypedef?define的用法与区别http://www.shnenglu.com/tiger7/articles/142399.htmltiger7tiger7Mon, 21 Mar 2011 12:39:00 GMThttp://www.shnenglu.com/tiger7/articles/142399.htmlhttp://www.shnenglu.com/tiger7/comments/142399.htmlhttp://www.shnenglu.com/tiger7/articles/142399.html#Feedback0http://www.shnenglu.com/tiger7/comments/commentRss/142399.htmlhttp://www.shnenglu.com/tiger7/services/trackbacks/142399.htmltypedef?define的用法与区别

一、typedef的用?/p>

在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言~译q程的一部分Q但它ƈ不实际分配内存空_实例像:

typedef    int       INT;
typedef    int       ARRAY[10];
typedef   (int*)   pINT;

typedef可以增强E序的可L,以及标识W的灉|性,但它也有“非直观?#8221;{缺炏V?/p>


二?define的用?/p>

#defineZ宏定义语句,通常用它来定义常?包括无参量与带参?Q以及用来实现那?#8220;表面似和善、背后一长串”的宏Q它本nq不在编

译过E中q行Q而是在这之前(预处理过E?/span>)已l完成了Q但也因此难以发现潜在的错误及其它代码维护问题,它的实例像:

#define   INT             int
#define   TRUE         1
#define   Add(a,b)     ((a)+(b));
#define   Loop_10    for (int i=0; i<10; i++)

在Scott Meyer的Effective C++一书的条款1中有关于#define语句弊端的分析,以及好的替代ҎQ大家可参看?/p>


三、typedef?define的区?/p>

从以上的概念便也能基本清楚,typedef只是Z增加可读性而ؓ标识W另L新名U?仅仅只是个别?Q?define原本在C中是Z定义帔R

Q到了C++Qconst、enum、inline的出C它也渐渐成ؓ了v别名的工兗有时很Ҏ搞不清楚与typedef两者到底该用哪个好Q如#define

INT intq样的语句,用typedef一样可以完成,用哪个好呢?我主张用typedefQ因为在早期的许多C~译器中q条语句是非法的Q只是现今的

~译器又做了扩充。ؓ了尽可能地兼容,一般都遵@#define定义“可读”的常量以及一些宏语句的Q务,而typedef则常用来定义关键字、冗

长的cd的别名?/p>

宏定义只是简单的字符串代?原地扩展)Q而typedef则不是原地扩展,它的新名字具有一定的装性,以致于新命名的标识符h更易定义?/p>

量的功能。请看上面第一大点代码的第三行Q?/p>

typedef    (int*)      pINT;
以及下面q行:
#define    pINT2    int*

效果相同Q实则不同!实践中见差别QpINT a,b;的效果同int *a; int *b;表示定义了两个整型指针变量。而pINT2 a,b;的效果同int *a, b;

表示定义了一个整型指针变量a和整型变量b?/p>

 

 typedef的四个用途和两个陷阱

用途一Q?
定义一U类型的别名Q而不只是单的宏替换。可以用作同时声明指针型的多个对象。比如:
char*   pa,   pb;     //   q多CW合我们的意图,它只声明了一个指向字W变量的指针Q?#160; 
//   和一个字W变量;
以下则可行:
typedef   char*   PCHAR;     //   一般用大写
PCHAR   pa,   pb;                 //   可行Q同时声明了两个指向字符变量的指?
虽然Q?
char   *pa,   *pb;
也可行,但相Ҏ说没有用typedef的Ş式直观,其在需要大量指针的地方Qtypedef的方式更省事?

用途二Q?
用在旧的C代码中(具体多旧没有查)Q帮助struct。以前的代码中,声明struct新对象时Q必要带上structQ即形式为:   struct   l构?#160;  对象名,如:
struct   tagPOINT1
{
        int   x;
        int   y;
};
struct   tagPOINT1   p1;  

而在C++中,则可以直接写Q结构名   对象名,卻I
tagPOINT1   p1;

估计某h觉得l常多写一个struct太麻烦了Q于是就发明了:
typedef   struct   tagPOINT
{
        int   x;
        int   y;
}POINT;

POINT   p1;   //   q样比原来的方式少写了一个structQ比较省事,其在大量用的时?

或许Q在C++中,typedef的这U用途二不是很大Q但是理解了它,Ҏ握以前的旧代码还是有帮助的,毕竟我们在项目中有可能会遇到较早些年代遗留下来的代码?

用途三Q?
用typedef来定义与q_无关的类型?
比如定义一个叫   REAL   的Q点类型,在目标^C上,让它表示最高精度的cd为:
typedef   long   double   REAL;  
在不支持   long   double   的^C上,改ؓQ?
typedef   double   REAL;  
在连   double   都不支持的^C上,改ؓQ?
typedef   float   REAL;  
也就是说Q当跨^台时Q只要改?#160;  typedef   本npQ不用对其他源码做Q何修攏V?
标准库就q泛使用了这个技巧,比如size_t?
另外Q因为typedef是定义了一U类型的新别名,不是单的字符串替换,所以它比宏来得E_Q虽然用宏有时也可以完成以上的用途)?

用途四Q?
为复杂的声明定义一个新的简单的别名。方法是Q在原来的声明里逐步用别名替换一部分复杂声明Q如此@环,把带变量名的部分留到最后替换,得到的就是原声明的最化版。D例:

1.   原声明:int   *(*a[5])(int,   char*);
变量名ؓaQ直接用一个新别名pFun替换a可以了Q?
typedef   int   *(*pFun)(int,   char*);  
原声明的最化版Q?
pFun   a[5];  

2.   原声明:void   (*b[10])   (void   (*)());
变量名ؓbQ先替换双部分括号里的QpFunParam为别名一Q?
typedef   void   (*pFunParam)();
再替换左边的变量bQpFunx为别名二Q?
typedef   void   (*pFunx)(pFunParam);
原声明的最化版Q?
pFunx   b[10];

3.   原声明:doube(*)()   (*e)[9];  
变量名ؓeQ先替换左边部分QpFuny为别名一Q?
typedef   double(*pFuny)();
再替换右边的变量eQpFunParamy为别名二
typedef   pFuny   (*pFunParamy)[9];
原声明的最化版Q?
pFunParamy   e;  

理解复杂声明可用?#8220;叛_法则”Q?span style="COLOR: red">从变量名看vQ先往叻I再往左,到一个圆括号p转阅ȝ方向Q括号内分析完就跛_括号Q还是按先右后左的顺序,如此循环Q直到整个声明分析完。D例:
int   (*func)(int   *p);
首先扑ֈ变量名funcQ外面有一对圆括号Q而且左边是一?Pq说明func是一个指针;然后跛_q个圆括P先看双Q又遇到圆括Pq说?*func)是一个函敎ͼ所以func是一个指向这cd数的指针Q即函数指针Q这cd数具有int*cd的Ş参,q回值类型是int?
int   (*func[5])(int   *);
func双是一个[]q算W,说明func是具?个元素的数组Qfunc的左Ҏ一?Q说明func的元素是指针Q注意这里的*不是修饰funcQ而是修饰func[5]的,原因是[]q算W优先?高,func先跟[]l合Q。蟩个括P看右边,又遇到圆括号Q说明func数组的元素是函数cd的指针,它指向的函数hint*cd的Ş参,q回值类型ؓint?

也可以记?个模式:
type   (*)(....)函数指针  
type   (*)[]数组指针  
Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q?

陷阱一Q?
CQtypedef是定义了一U类型的新别名,不同于宏Q它不是单的字符串替换。比如:
先定义:
typedef   char*   PSTR;
然后Q?
int   mystrcmp(const   PSTR,   const   PSTR);

const   PSTR实际上相当于const   char*吗?不是的,它实际上相当于char*   const?
原因在于constl予了整个指针本w以帔R性,也就是Ş成了帔R指针char*   const?
单来_C当const和typedef一起出现时Qtypedef不会是简单的字符串替换就行?

陷阱二:
typedef在语法上是一个存储类的关键字Q如auto、extern、mutable、static、register{一PQ虽然它q不真正影响对象的存储特性,如:
typedef   static   int   INT2;   //不可?
~译失败,会提C?#8220;指定了一个以上的存储c?#8221;?/p>

tiger7 2011-03-21 20:39 发表评论
]]>
知道Z么需要htons(), ntohl(), ntohs()Qhtons() 函数? Q{Q?/title><link>http://www.shnenglu.com/tiger7/articles/123520.html</link><dc:creator>tiger7</dc:creator><author>tiger7</author><pubDate>Sun, 15 Aug 2010 13:06:00 GMT</pubDate><guid>http://www.shnenglu.com/tiger7/articles/123520.html</guid><wfw:comment>http://www.shnenglu.com/tiger7/comments/123520.html</wfw:comment><comments>http://www.shnenglu.com/tiger7/articles/123520.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tiger7/comments/commentRss/123520.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tiger7/services/trackbacks/123520.html</trackback:ping><description><![CDATA[<p>知道Z么需要htons(), ntohl(), ntohs()Qhtons() 函数? <br>      在C/C++写网l程序的时候,往往会遇到字节的|络序和主机顺序的问题。这是就可能用到htons(), ntohl(), ntohs()Qhtons()q?个函数?/p> <p>      |络字节序与本地字节顺序之间的转换函数Q?br></p> <div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><span style="COLOR: #008080">1</span><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #000000">htonl()</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Host to Network Long</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">2</span><span style="COLOR: #000000"><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">ntohl()</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Network to Host Long</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">3</span><span style="COLOR: #000000"><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">htons()</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Host to Network Short</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">4</span><span style="COLOR: #000000"><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">ntohs()</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Network to Host Short</span><span style="COLOR: #000000">"</span></div> <p><br>      之所以需要这些函数是因ؓ计算机数据表C存在两U字节顺序:NBO与HBO</p> <p>|络字节序NBOQNetwork Byte OrderQ:<br>      按从高到低的序存储Q在|络上用统一的网l字节顺序,可以避免兼容性问题?/p> <p>L字节序QHBOQHost Byte OrderQ:<br>      不同的机器HBO不相同,与CPU设计有关Q数据的序是由cpu军_?而与操作pȝ无关?br> <br>      ?Intel   x86l构?          short型数0x1234表示?4   12, int型数0x12345678表示?8   56   34   12   <br>      如IBM   power PCl构? short型数0x1234表示?2   34, int型数0x12345678表示?2   34   56   78<br>   <br>      ׃q个原因不同体系l构的机器之间无法通信,所以要转换成一U约定的数序,也就是网l字节顺?其实是如同power   pc那样的顺?。在PC开发中有ntohl和htonl函数可以用来q行|络字节和主机字节的转换?/p> <br><br>PSQ{?a >http://www.cnblogs.com/heaad/archive/2009/07/16/1525112.html</a> <img src ="http://www.shnenglu.com/tiger7/aggbug/123520.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tiger7/" target="_blank">tiger7</a> 2010-08-15 21:06 <a href="http://www.shnenglu.com/tiger7/articles/123520.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++ Primer 学习W记Q二Q?---- W二?变量和基本类型(1Q?/title><link>http://www.shnenglu.com/tiger7/articles/112815.html</link><dc:creator>tiger7</dc:creator><author>tiger7</author><pubDate>Sat, 31 Jul 2010 12:23:00 GMT</pubDate><guid>http://www.shnenglu.com/tiger7/articles/112815.html</guid><wfw:comment>http://www.shnenglu.com/tiger7/comments/112815.html</wfw:comment><comments>http://www.shnenglu.com/tiger7/articles/112815.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tiger7/comments/commentRss/112815.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tiger7/services/trackbacks/112815.html</trackback:ping><description><![CDATA[<p><strong>一、知识点</strong><br><span style="COLOR: red">       1、基本内|类型(术cd和voidcdQ?/span><br><span style="COLOR: red">       2、字面值常量和变量</span><br>       3、const限定W?br>       4、引?br>       5、typedef名字<br>       6、枚?br>       7、类cd<br>       8、头文g<br><br><strong>二、要?/strong></p>        <em>1、基本内|类?br></em>             术cdQarithmetic typeQ包括:整数、QҎ、单个字W和布尔倹{?整型包括整数、字W和布尔|整数包括有符号和无符LQ无W号都表C正整数Q有W号的可以表C敎ͼ当符号位?Ӟgؓ负数Q符号位?Ӟ表示正数Q符号位一般是高位Q。QҎ包括单精度(float  32位)、双_ֺQdouble  64位)、扩展精度(long double  96?28位)?br>       <br>        <em>2、字面值常?br></em>              只有内置cd存在字面|没有cȝ型的字面倹{?br>               20Q十q制Q,024Q八q制Q以零开_Q?x14Q十六进Ӟ?x开_     -------------      整Ş字面?br>               3.14159FQ单_ֺQ,12.345LQ扩展精度)Q?e0Q科学计敎ͼ                        -------------      点字面?br>               trueQfalse                                                                                                                      -------------      布尔字面?br>               'a'Q?2'Q这两个都是字符Q,L'a'Q宽字符Qwchar_tQ?#160;                                         -------------      字符字面?br>               "Hello World"Q字W串Q,L"Hello World"Q宽字符Ԍ                                          -------------      字符串字面?br>               <br>            此外q有一?#8220;非打印字W{换序?#8221;Q如Q\nQ换行)、\tQ水q_表符Q、\rQ回车符Q、\\Q反斜杠Q等Q也可以用\oooQ即3个反斜杠?个数字来表示Q对于与ASCII码)?br><br>         <em>3、变?br></em>             叛_|rvalueQ:叛_只能出现在赋值的双Q不能出现在赋D句的左边Q?br>             左|lvalueQ:左值可以出现在赋D句的左边Q也可以出现在右辏V?br>             数字字面值是叛_|因此不能被赋|?0 = 1Q这样就是错误的?br>            <br>             变量名(标识W)Q由字母、数字和下划U组成。必M下划U或字母开_不能以数字开头。标识符不能包含2个连l的下划U,也不能以下划U开头后面紧跟一个大写字母。注意一些C++中关键字?br><br>             变量的初始化Q?br>                 int ival(1024);                       //直接初始?br>                 int ival = 1024;                     //复制初始?br>              <br>              声明Q表明变量的名称和类型)、定义(q要为变量分配存储空_? <img src ="http://www.shnenglu.com/tiger7/aggbug/112815.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tiger7/" target="_blank">tiger7</a> 2010-07-31 20:23 <a href="http://www.shnenglu.com/tiger7/articles/112815.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++ Primer 学习W记Q一Q?---- W一?快速入?/title><link>http://www.shnenglu.com/tiger7/articles/112208.html</link><dc:creator>tiger7</dc:creator><author>tiger7</author><pubDate>Fri, 16 Apr 2010 17:01:00 GMT</pubDate><guid>http://www.shnenglu.com/tiger7/articles/112208.html</guid><wfw:comment>http://www.shnenglu.com/tiger7/comments/112208.html</wfw:comment><comments>http://www.shnenglu.com/tiger7/articles/112208.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tiger7/comments/commentRss/112208.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tiger7/services/trackbacks/112208.html</trackback:ping><description><![CDATA[一、知识点<br>    1、基本的C++E序<br>    2?个基本的输入输出对象<br>    3、注释://?*..*/<br>    4、控制语句(while、for、ifQ?br>    5、类cdQ类的简单介l)<br> <br>二、要?#160;<br>   1、基本的C++E序<br>       C++E序最重要的是main函数Q每个C++E序必须包含Q它Qmain函数Q是操作pȝ唯一能显C用的函数?br>    2?个基本的输入输出对象<br>       cinQ标准输入;coutQ标准输出;clogQ生程序执行的一般信息;cerrQ标准错误,输出警告和错误信息?br>       一个简单的输入输出E序Q?iostream> <br> <div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #000000">#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br><img id=Codehighlighter1_32_271_Open_Image onclick="this.style.display='none'; Codehighlighter1_32_271_Open_Text.style.display='none'; Codehighlighter1_32_271_Closed_Image.style.display='inline'; Codehighlighter1_32_271_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_32_271_Closed_Image onclick="this.style.display='none'; Codehighlighter1_32_271_Closed_Text.style.display='none'; Codehighlighter1_32_271_Open_Image.style.display='inline'; Codehighlighter1_32_271_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_32_271_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_32_271_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    std::cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Enter You Name:</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> std::endl;  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">q里先输Z行信?/span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> name[</span><span style="COLOR: #000000">50</span><span style="COLOR: #000000">];     </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">定义一个字W变?/span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000">    std::cin </span><span style="COLOR: #000000">>></span><span style="COLOR: #000000"> name;  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">客L输入输入到变量中</span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000">    std::cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> name </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">, Welecon to tiger's blog.</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> std::endl;  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">输出</span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    system(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">pause</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">控制在最后暂?/span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}</span></span></div>        “<<”Q输出操作符。接?个操作数Q左操作数必Lostream对象Q右操作数是要输出的倹{?br>       “>>”Q输入操作符。同上,左操作数必须是istream对象Q右操作数是保存输入l构的对象?br>    3、注?br>       “//”Q单行注释;“/*...*/”Q多行注释。注意,注释中不能嵌套?<br>    4、控制语?br>        while、for、if三个。while是可以设|无I@环的Q而for则是有限循环中用到的Qif是用于判断中的?br>    5、类<br>        cȝ名称、成员变量、成员函数?br>    6、其?br>        对应std::cin >> i q个语句Q它q回的是个cin的操作符Q即对于while (std::cin >> i) 的这个@环中Q验证的是cinq个对象Q如果遇到文件结束符或无效输入时Q这个cin对象是无效的Q这while判断中就是false?br> <img src ="http://www.shnenglu.com/tiger7/aggbug/112208.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tiger7/" target="_blank">tiger7</a> 2010-04-17 01:01 <a href="http://www.shnenglu.com/tiger7/articles/112208.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++ Primer 学习W记http://www.shnenglu.com/tiger7/articles/112205.htmltiger7tiger7Sat, 10 Apr 2010 16:50:00 GMThttp://www.shnenglu.com/tiger7/articles/112205.htmlhttp://www.shnenglu.com/tiger7/comments/112205.htmlhttp://www.shnenglu.com/tiger7/articles/112205.html#Feedback0http://www.shnenglu.com/tiger7/comments/commentRss/112205.htmlhttp://www.shnenglu.com/tiger7/services/trackbacks/112205.html

tiger7 2010-04-11 00:50 发表评论
]]>
һþþƷ| þ޹vwww| ĻۺϾþò| ҹþþ| Ʒþøһ| ŷ㽶þۺվ| ŷһþþƷ| þ˽˹Ʒ| þþþþ޾Ʒ| þˬˬˬ˾þþ| ƷѾþþþӰԺ| Ļþ2017| ŷһƷþ| 7777þĻ| þ99ۺϾƷ| Ʒþþþþ˳ | ƷŷƬþùŷ| ޾Ʒþþwww| 99reþþƷҳ2020| Ҫþðѹۿ| 99þþžžƷ| þAV˳׽| Ʒþþþþù| Ʒһþò| պʮ˽һþ| þ޸ۿ| ھƷþþþþ99| ѾþþƷ99reѾy| þwww˳ɾƷ㽶| Ʒþþþ| þþþavרˮ| ĻþþƷ| һŷƬþ| ƷþĻ| þþƷ| ձþþþƷĻ| þ99Ʒ| 91ƷۺϾþþþþ| þ99Ʒþþþþþþþ| þˬˬˬ˾þþ| þþƷaĻ|