??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲国产天堂久久久久久,天天综合久久一二三区,久久人人爽人人爽人人片AV不http://www.shnenglu.com/grass-and-moon/贵在自知zh-cnTue, 06 May 2025 21:23:02 GMTTue, 06 May 2025 21:23:02 GMT60matlab 最临近插?/title><link>http://www.shnenglu.com/grass-and-moon/archive/2013/01/29/197614.html</link><dc:creator>钟谢?/dc:creator><author>钟谢?/author><pubDate>Tue, 29 Jan 2013 03:30:00 GMT</pubDate><guid>http://www.shnenglu.com/grass-and-moon/archive/2013/01/29/197614.html</guid><wfw:comment>http://www.shnenglu.com/grass-and-moon/comments/197614.html</wfw:comment><comments>http://www.shnenglu.com/grass-and-moon/archive/2013/01/29/197614.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/grass-and-moon/comments/commentRss/197614.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/grass-and-moon/services/trackbacks/197614.html</trackback:ping><description><![CDATA[ <p>function Io = imageNearest(Ii,dw,dh) <br/> %%% function: image enlarge or zoom out with nearest interpolation <br/> %%% Para: Ii - input gray image <br/> %%% dw - scaling for width <br/> %%% dh - scaling for height</p> <p>[h, w] = size(Ii); <br/> wo = w*dw; <br/> ho = h*dh; <br/> I_indexW = 1:wo; <br/> I_indexW = I_indexW/dw; <br/> I_indexW = floor(I_indexW+0.5);</p> <p>I_indexH = 1:ho; <br/> I_indexH = I_indexH'; <br/> I_indexH = I_indexH/dh; <br/> I_indexH = floor(I_indexH+0.5);</p> <p>Io = Ii(I_indexH,I_indexW); <br/></p> <img src ="http://www.shnenglu.com/grass-and-moon/aggbug/197614.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/grass-and-moon/" target="_blank">钟谢?/a> 2013-01-29 11:30 <a href="http://www.shnenglu.com/grass-and-moon/archive/2013/01/29/197614.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SDL 入门http://www.shnenglu.com/grass-and-moon/archive/2012/10/18/193491.html钟谢?/dc:creator>钟谢?/author>Thu, 18 Oct 2012 14:28:00 GMThttp://www.shnenglu.com/grass-and-moon/archive/2012/10/18/193491.htmlhttp://www.shnenglu.com/grass-and-moon/comments/193491.htmlhttp://www.shnenglu.com/grass-and-moon/archive/2012/10/18/193491.html#Feedback0http://www.shnenglu.com/grass-and-moon/comments/commentRss/193491.htmlhttp://www.shnenglu.com/grass-and-moon/services/trackbacks/193491.htmlhttp://blog.csdn.net/lf426/article/category/364048/2

]]>
采用TL-WR703N搭徏校园|接入点http://www.shnenglu.com/grass-and-moon/archive/2012/10/15/193334.html钟谢?/dc:creator>钟谢?/author>Mon, 15 Oct 2012 12:38:00 GMThttp://www.shnenglu.com/grass-and-moon/archive/2012/10/15/193334.htmlhttp://www.shnenglu.com/grass-and-moon/comments/193334.htmlhttp://www.shnenglu.com/grass-and-moon/archive/2012/10/15/193334.html#Feedback3http://www.shnenglu.com/grass-and-moon/comments/commentRss/193334.htmlhttp://www.shnenglu.com/grass-and-moon/services/trackbacks/193334.html
1. 自q?sh)脑的本地连接属性中的ip地址讄?92.168.1.2Q掩码设|ؓ(f)255.255.255.0Q网兌|ؓ(f)192.168.1.1
2. wr703n用网UK接到?sh)脑?/div>
3. 览器中q入192.168.1.1Q然后用固件openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin升路由?/div>
4. 下蝲安装两个软gQW(xu)inSCPQ用于\由器与本地电(sh)脑之间的文g传输Q、SecureCRTQSSHd器)(j)
5. Zg升完之后重启\由器Q用WinSCPq接q入路由?/div>
6. 修改文g
 文gQ?etc/config/wireless
修改为:(x)
config wifi-device 'radio0'
         option type 'mac80211'
         option channel '3'
         option macaddr '14:e6:e4:e7:c6:a2'
         option hwmode '11ng'
         option htmode 'HT20'
         list ht_capab 'SHORT-GI-20'
         list ht_capab 'SHORT-GI-40'
         list ht_capab 'RX-STBC1'
         list ht_capab 'DSSS_CCK-40'
         option disabled '0'
         option txpower '27'
         option country 'US'

config wifi-iface
         option device 'radio0'
         option network 'lan'
         option mode 'ap'
         option ssid 'q里填无U网的名U英?
         option encryption 'psk2'
         option key 'q里写密码八?

文gQ?etc/config/network
如果采用?rn)态网址׃改ؓ(f)Q?br /> config interface 'loopback'
         option ifname 'lo'
         option proto 'static'
         option ipaddr '127.0.0.1'
         option netmask '255.0.0.0'

config interface 'wan'
         option ifname 'eth0'
         option _orig_ifname 'eth0'
         option _orig_bridge 'false'
         option proto 'static'
         option ipaddr 'q里写你的静(rn)态IP'
         option netmask '写子|掩?
         option gateway '写网?
         option dns '写DNS'

config interface 'lan'
         option type 'bridge'
         option proto 'static'
         option ipaddr '192.168.1.1'
         option netmask '255.255.255.0'

文gQ?etc/config/network
如果是自动获取IP方式׃改ؓ(f)Q?br /> config interface 'loopback'
         option ifname 'lo'
         option proto 'static'
         option ipaddr '127.0.0.1'
         option netmask '255.0.0.0'

config interface 'wan'
         option ifname 'eth0'
         option _orig_ifname 'eth0'
         option _orig_bridge 'false'
         option proto 'dhcp'

config interface 'lan'
         option type 'bridge'
         option proto 'static'
         option ipaddr '192.168.1.1'
         option netmask '255.255.255.0' 
7. 链接http://code.google.com/p/mentohust/issues/detail?id=175中的40K的mentohust下蝲复制?usr/bin中,q过chmod 755 mentohust命o(h)对mentohust的文件属性进行更?/div>
8. 可以?root/下徏立runHust.sh的shell文g
文gQrunHust.sh
内容Q?/div>
#! /bin/ash
mentohust -u***** -p**** -i***** -m***** -g*** -d0 -b0 -a1
9. \由器q接到校园网的网U接口上q行SecureCRTQ执行ash runHust.shp够进行联|?/div>
10. q网期间不能够中断SecureCRT软g
Q有其它方式Q请补充Q?/div>


]]>[转]折叠::Vimq阶索引[2]http://www.shnenglu.com/grass-and-moon/archive/2012/08/01/185859.html钟谢?/dc:creator>钟谢?/author>Wed, 01 Aug 2012 03:10:00 GMThttp://www.shnenglu.com/grass-and-moon/archive/2012/08/01/185859.htmlhttp://www.shnenglu.com/grass-and-moon/comments/185859.htmlhttp://www.shnenglu.com/grass-and-moon/archive/2012/08/01/185859.html#Feedback0http://www.shnenglu.com/grass-and-moon/comments/commentRss/185859.htmlhttp://www.shnenglu.com/grass-and-moon/services/trackbacks/185859.htmlhttp://blah.blogsome.com/2006/04/13/vim_tut_folding/#g_t_00ca_00b5_00c0_00fd_00d1_00dd_00ca_00be
讲解的清楚明?jin),值得一?img src ="http://www.shnenglu.com/grass-and-moon/aggbug/185859.html" width = "1" height = "1" />

]]>vim 非贪婪匹?/title><link>http://www.shnenglu.com/grass-and-moon/archive/2012/07/31/185752.html</link><dc:creator>钟谢?/dc:creator><author>钟谢?/author><pubDate>Tue, 31 Jul 2012 07:59:00 GMT</pubDate><guid>http://www.shnenglu.com/grass-and-moon/archive/2012/07/31/185752.html</guid><wfw:comment>http://www.shnenglu.com/grass-and-moon/comments/185752.html</wfw:comment><comments>http://www.shnenglu.com/grass-and-moon/archive/2012/07/31/185752.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/grass-and-moon/comments/commentRss/185752.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/grass-and-moon/services/trackbacks/185752.html</trackback:ping><description><![CDATA[试自己实现高亮Q采用match的方?br />paper.vim<br />syn match m1 "\!.*?\!"<br />hi m1 guifg=red<br />首先试?jin)这L(fng)方式Q上q的正则表达式在<div>http://regexpal.com/</div>中能能够很好的实?br />但是在vim中却q?jin)?br />找了(jin)半天l于扑ֈ?jin)解决的办法Q改为如下的方式Q?br />syn match m1 "\!.\{-}\!"<br />它在<div>http://regexpal.com/</div>无法识别?br />可见vim的正则表辑ּq是有所不同的,诶?br /><img src ="http://www.shnenglu.com/grass-and-moon/aggbug/185752.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/grass-and-moon/" target="_blank">钟谢?/a> 2012-07-31 15:59 <a href="http://www.shnenglu.com/grass-and-moon/archive/2012/07/31/185752.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转]CodeBlocks中文版用手?/title><link>http://www.shnenglu.com/grass-and-moon/archive/2012/07/28/185425.html</link><dc:creator>钟谢?/dc:creator><author>钟谢?/author><pubDate>Sat, 28 Jul 2012 01:16:00 GMT</pubDate><guid>http://www.shnenglu.com/grass-and-moon/archive/2012/07/28/185425.html</guid><wfw:comment>http://www.shnenglu.com/grass-and-moon/comments/185425.html</wfw:comment><comments>http://www.shnenglu.com/grass-and-moon/archive/2012/07/28/185425.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/grass-and-moon/comments/commentRss/185425.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/grass-and-moon/services/trackbacks/185425.html</trackback:ping><description><![CDATA[<div> 译者:(x)JGood(<a >http://blog.csdn.net/Jgood</a> ) <p>    译者言Q工Ʋ善其事Q必先利其器。一个好的工兯事半功倍。写E序Ӟ特别是写C(j)++E序Q大部分子里惛_的第一个工具就?VisualStudio。不可否认,VS很好很强大,用户体验非常好。但VisualStudio也是有缺点的Q它非常庞大Q只支持VCQ不支持其他?~译器;VS只能在windows下跑Q在其他os上就无用武之圎ͼVS是要qQ而且费用不非QExpress版本免费Q。Code::Blocks?一个非怼U的工P如果(zhn)正在寻找VisualStudio之外的,开源、免贏V轻ѝ支持多U编译器、跨q_的C/C++ IDEQ那么Code::Blocks是一个很好的选择?/p> <p>    说明Q笔者打用两篇日志来完成对Code::Blocks手册前二章的~译Q分别是Q用篇、插件篇。本文是W一:(x)<strong>Code::Blocks使用?/strong> 。原手册W三章介lCode::Blocks变量、脚本的使用Q第四章介绍如何从源码编译Code::BlocksQ这两章内容不是很多Q笔者认为对大部分用户帮助不是不大,暂不打算译。笔者用的Code::Block版本是nightly buildsQsvn6088Q可以在q个地址下蝲Q?a title="http://forums.codeblocks.org/index.php/topic,11875.0.html">http://forums.codeblocks.org/index.php/topic,11875.0.html</a> Q。用的~译器是GCC3.4.5。每个版本之间的使用可能?x)有l微的差别。因为水qx限,隑օ出错Q欢q指正!</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/code_block.GIF" alt="Code::BlocksQ免贏V开源、跨q_、功能强大的C/C++ IDE? title="Code::BlocksQ免贏V开源、跨q_、功能强大的C/C++ IDE? height="311" width="615" /> </a> </p> <p>Code::Blocks 手册 Version 1.0</p> <p>感谢CodeBlocks目l:(x)</p> <p>Anders F. Bjorklund (afb), Biplab Kumar Modak (biplab), Bartomiej wiecki (byo), PaulA. Jimenez (ceniza), Koa Chong Gee (cyberkoa), Daniel Orb (daniel2000), Lieven de Cock(killerbot), Yiannis Mandravellos (mandrav), Mispunt (mispunt), Martin Halle (morten-macy), Jens Lody (jens), Jerome Antoine (dje), Damien Moore (dmoore), Pecan Heber(pecan), Ricardo Garcia (rickg22), Thomas Denk (thomasdenk), tiwag (tiwag)</p> <p>Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.</p> <h3>1 CodeBlocks目理</h3> <p>    下图是CodeBlocksq行时的用户界面Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/screenshort1.GIF" alt="CodeBlocksq行界面" title="CodeBlocksq行界面" /> </a> </p> <ul><li>    理(Management)Q管理窗口包含Project视图与Symbols视图。Project视图昄当前CodeBlocks打开的所有项?Q译者注Q类gVS解决Ҏ(gu)资源理器)(j)QSymbols视图昄目中的标识W:(x)c,函数、变量等信息Q译者注Q类gVS的类视图Q? </li><li>    代码~辑器:(x)支持代码折叠Q关键字高亮昄。上图main.cpp正在被编辑? </li><li>    打开文g列表Q显C当前在代码~辑器中打开的所有文件列表。上图中打开的文件列表ؓ(f)Qmain.cpp, person.cpp, person.hpp </li><li>    代码D(CodeSnippetsQ:(x)理常用的代码段、常用文仉?links to files)与URL。可以通过菜单 View->CodeSnippets 来显C面板? </li><li>    日志和其他:(x)q个H口用于输出日志信息Q显C查询结果等{? </li><li>    状态栏提供?jin)以下这些信息?x) </li><li>        ~辑器中打开文g的绝对\径; </li><li>        文g的编码类型; </li><li>        光标所在的行与列; </li><li>        当前的键盘模式(insert 或?overwriteQ; </li><li>        当前的文件状态。被修改q的Q但未保存Q文件将被标Cؓ(f)“modified”Q否则这里ؓ(f)I; </li><li>        文g操作的权限。如果文件是只读的,q里会(x)昄“Read only”Q在 Open files list中,该文件会(x)使用一个加琐的图标来显C; </li><li>        个性化配置名称Q?</li></ul> <p>    CodeBlocks提示?jin)非常灵zd强大的项目管理功能。下文将介绍目理的一些常用功能?</p> <h4>1.1 目视图QProject ViewQ?/h4> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/project_view.GIF" alt="理H口" title="理H口" /> </a> </p> <p>    在CodeBlocks中,Project的源文gQ如C/C++的源文g?qing)其对应的头文gQ和~译属性设|信息都保存 ?lt;name>.cbp文g里。可以通过菜单[File–>Project]启动工程创徏向导来创建新的ProjectQ然后通过理 H口的上下文菜单[Add files]Q译者注Q上下文菜单Q指当前H口中选中目标目Q然后右键显C的菜单Q向Project中添加文件。CodeBlocks?x)自动根据文件?后缀它们放入不同的cd文g夹中Q译者注Q这个文件夹是虚拟的Q实际ƈ不存在)(j)。下面是默认的分c:(x)</p> <ul><li>    SourcesQ包含源文gQ后~?.c?.cppQ? </li><li>    ASM SourcesQ包括汇~源文gQ后~一般ؓ(f)*.s?.S?.ss?.asmQ? </li><li>    HeadersQ包括头文gQ后~一般ؓ(f)*.h?*.hppQ? </li><li>    ResourcesQ包括资源文Ӟ后缀一般ؓ(f)*.res?.xrcQ?</li></ul> <p>    通过理H口的上下文菜单[Project tree –>Edit file types & categories]Q用户可以新定义的文件类别,qؓ(f)其相应的后缀。例如,如果你希?.ld的文件放到Linkerscript的分c里Q你只需新徏cdLinkerscriptQƈ为它指定*.ld后缀卛_?/p> <p>    <strong>提示Q?/strong> 如果你取消选中理H口上下文菜单的[Project tree–>Categorize by file types]选项Q所有的目文g会(x)按它们在文gpȝ中的位置来显C?/p> <h4>1.2 目备注QNotes for ProjectsQ?/h4> <p>    可以lC(j)odeBlocks目d一些备注,用于寚w目进行概要的描述与说明,q些信息有助于其他成员迅速的?jin)解目。备注信息被保存在项目工E文仉Qƈ可以讄为随着目的启动而显C。如图:(x)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/project_note.gif" alt="讄目备注信息" title="讄目备注信息" /> </a> </p> <h4>1.3 目模板</h4> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/template.gif" alt="目模板" title="目模板" /> </a> </p> <p>    CodeBlocks支持许多不同cd的项目模板,它们?x)在新徏目的时候显C,创徏新项目的时候往往从这些模板中选择Q如上图Q)(j)。用户可以自定义工程 模板。工E模板保存编译器的类型、编译选项、资源的配置{相关信息。项目模板保存在Documents andSettingsn\<user>\Application Data\codeblocks\UserTemplates目录中。如果你希望该工E模板被本机的所有用户用,必须把对应的模板文g拯?CodeBlocks的安装目录。模板在CodeBlocks重启之后生效Q通过菜单[New->Project->User templates]可以看到自定义的模ѝ?/p> <p>    <strong>提示Q?/strong> 用户可以通过右键选中工程向导中的模板对其q行~辑。如下图Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/edit_template.gif" alt="~辑模板" title="~辑模板" /> </a> </p> <h4>1.4 从编译模式创建项目(Create Projects from Build TargetsQ?/h4> <p>    一个项目往往有不同的~译模式Q最常见的是Release和Debug。不同的~译模式表示用于构徏当前目所使用的不同编译器选项、调试信息或者依赖的 文g。每一U编译模式都可以被保存成独立的工E文件。通过上下文菜单[Project->Properties]Q在Build Targets标签中点?#8220;Create project from target”按钮来生成对应编译模式的工程文gQ如图:(x)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/create_build_target.gif" alt="~译模式" title="~译模式" /> </a> </p> <h4>1.5 ~译模式QVirtual TargetsQ?/h4> <p>    一个项目可以有多种不同的编译模式,最常用的编译模式ؓ(f)“Debug”?#8220;Release”?#8220;Debug”模式下会(x)包含许多Debug信息Q?“Release”模式下没有这些信息。也可以通过上下文菜单[Project->Properties->Build Targets]d其他的编译模式。编译模式将昄在工h中:(x)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/build_target.gif" alt="~译模式" title="~译模式" /> </a>  </p> <h4>1.6 预生成和生成后步?(Pre- and Postbuild setps)</h4> <p>    Code::blocks允许在项目生成前和生成后执行额外的操作,q些操作分别被称为预生成QPrebuiltQ或生成后(PostbuiltQ步骤。下面是典型的生成后步骤Q(译者注Q笔者对低层的东西知道的不多Q不是很清楚下面q些步骤的意思。)(j)</p> <p>        Creating an Intel Hexformat from a nished object <br />         Manipulating objects by objcopy <br />         Generating dump les by objdump</p> <h4>1.7 为构建目标添加脚本(Adding Scripts in Build TargetsQ?/h4> <p>    Code::Blocks允许使用脚本来调用菜单命令,控制目的生成?/p> <p>    <strong>提示Q?/strong> 脚本可以被包含到一个构建目标(Build TargetQ中?/p> <h4>1.8 解决Ҏ(gu)QWorkspaceQ与目依赖</h4> <p>    CodeBlocks可以同时打开多个目Q通过菜单[File->Save workspace]把它们集成到一个解x案中Qƈ生成一个对应的解决Ҏ(gu)文gQ?lt;name>.workspaceQ。下ơ打开解析Ҏ(gu)文g(<name>.workspace)Ӟq些目?x)被一起加载进来?/p> <p>    复杂的Y件系l通常׃同的模块、组件以独立的工E项目组成,它们之间往往存在依赖关系?/p> <p>    例如Q项目A以库(library)的Ş式提供一些公用函数给其他目调用Q如果项目A中的源代码被修改Q这个库得重新~译。项目B使用目A中实现的 函数Q那么项目B׃赖项目A。CodeBlocks把这些项目依赖的信息保存到解x案文件中Q所以解x案中的工E可以各自独立的创徏、编译而不怺 影响Q译者注Q由解决Ҏ(gu)文g来维护各目的依赖关p)(j)。这些依赖关pM(x)军_目的生成顺序。通过菜单 [Project->Properties]Q然后选择[Project’s dependencies]按钮来设|项目之间的依赖关系。如下图Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/proj_depen.gif" alt="目依赖" title="目依赖" /> </a> </p> <h4>1.9 包含汇编文g</h4> <p>    略?/p> <h4>1.10 代码~辑器与工具 (Editor and Tools)</h4> <h5>1.10.1 默认代码 (Default Code)    </h5> <p>    公司的编码规范往往要求源文件有l一的布局Q译者注Q例如源文g的开始处以统一的格式给出文件创建的旉、作者、实现的功能描述{相关信息)(j)?CodeBlocks允许预定义一些内容,当新建C/C++文g时这些内容会(x)自动d到文件的开始处。这里把预定义的内容UCؓ(f)default code。可以通过菜单[Settings–>Editor–>Default Code]来设|defaulg codeQ通过菜单[File->New->File]创徏的代码文件将自动d上default code。例如:(x)</p> <p>/************************************************************************* <br /> * Project: <br /> * Function: <br /> ************************************************************************* <br /> * $Author: mario $ <br /> * $Name: $ <br /> ************************************************************************* <br /> * <br /> * Copyright 2007 by company name <br /> * <br /> ************************************************************************/</p> <h5>1.10.2 ~写QAbbreviationQ?/h5> <p>    定义一个常用的代码片断[typing]Qƈl它提供一个名字[Abbreviation]Q在写程序的时候,只要l出q个名字Q然后按快捷键Ctrl + JQCodeBlocks׃(x)用预先定义的代码片断来替换该名字。(译者注QVS中也有类似的功能Q在C#E序Ӟ只要写出关键字forQ然后连l按两次 Tab键,~辑器会(x)自动生成for语句的框Ӟ是不是很方便Q~_~Q。通过菜单[Settings->Editor]来设|?AbbreviationQ如下图Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/abbrevition.gif" alt="代码~写" title="代码~写" /> </a> </p> <p>    abbreviation也支持参数变?Parametrisation)Q如Q?NOW表示当前旉Q。如Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/abbrevition_1.gif" alt="~写" title="abbrevition_1" /> </a> -->  <a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/abbrevition_2.gif" alt="~写2" title="abbrevition_2" /> </a> </p> <h5>1.10.3 个性化QPersonalitiesQ?/h5> <p>    CodeBlocks的配|信息被作ؓ(f)应用E序数据而保存在codeblocks文g夹的<user>.conf文g中。该配置文g中保存的 信息包括Q上ơ打开的项目、代码编辑器的设|、符h昄{等。默认的个性化讄被保存在default.conf文g中。通过命o(h)行参?-personality=myuser来调用CodeBlocksQ配|信息将被保存到myuser.conf中。如果该文g不存在,pȝ自动创?它。如果以命o(h)行的方式来启动CodeBlocksQƈ传递命令参?-personality=askQ将?x)显列出当前所有的修改化配|列表,用户选择 其一启动CodeBlocks。如下图Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/personality.gif" alt="个性化启动" title="个性化启动" /> </a> </p> <h5>1.10.4 配置文gQConfiguration FilesQ?/h5> <p>    CodeBlocks的配|信息保存在codeblocks目录下的default.conf文g中。当使用个性化讄的时候,配置信息被保存?lt;personality>.conf文g里? </p> <p>    cb_share_confQ一个辅助工P可以在CodeBlocks安装目录里找刎ͼ(j)被用来管理与保存q些讄信息?/p> <p>    如果你想为电(sh)脑的不同账户定义一个公用的默认讄Qdefual.conf文g应该被保存到\Documents and Settings\Default User\Application Data\codeblocks。CodeBlocks在第一ơ启动的时候,?x)将该配|文件拷贝到当前账户的application data目录下(q作为当前帐L(fng)配置文gQ?/p> <p>    如果惛_usb讑֤上创Z个绿色版本号的CodeBlocksQ请执行下面步骤Q将CodeBlocks安装目录拯到usb讑֤上,配|文?default.conf拯到该目录中,该配|文件将被用于全局的设|。确保系l有权限对该文gq行写入Q否则C(j)odeBlocks寚w|文件的修改?不会(x)被保存?/p> <h5>1.10.5 D与搜索(Navigate and SearchQ?/h5> <p>    CodeBlocks提供?jin)很多方法用于文件和函数之间D。书{ְ是最常用的一U方式。通过快捷键Ctrl + B在源文g中设|?删除一个书{,通过Alt + PgUp或Alt + PgDn在不同的书签之间跌{?/p> <p>    在管理窗口的Project视图中选中解决Ҏ(gu)或项目,右键点击在弹?gu)单中选择[Find file]Q输入你查找的文件名Uͼ然后回RQ该文g被选中Q如果文件存在的话)(j)Q再按回车,~辑器就?x)打开该文件。如下图Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/find_file.gif" alt="查找文g" title="查找文g" /> </a> </p> <p>    在CodeBlocks中,你可以很Ҏ(gu)的在头文件与源文件之间导航:(x)</p> <p>        1. 光标置于头文g被包含处Q例如:(x)#include “header.hpp”Q,右键选择?#8220;open include file”Q编辑器打开该包含文件。(译者注Q可以在VS中用快捷键 Ctrl + Shift + G 实现同样的操作。这个功能非常方便,特别是要查看源代码时。)(j)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/open_include.gif" alt="open_include" title="open_include" /> </a> </p> <p>        2. 通过右键菜单的[Swap header/source]Q在头文件与源文件之间切换?/p> <p>        3. 选中一个定义(如变量名Q类型名{等Q,在右键菜单中选择[Find declaration]Q编辑器׃(x)打开该定义的声明。(译者注Q可以用右键菜单的[Find implementation]定位到函数的实现处,在VS中用快捷键F12实现同样的操作。这也是一个非常方便的功能。)(j)?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/find_imp.gif" alt="转到定义? title="转到定义? /> </a> </p> <p>     CodeBlocks提供多种方式用于对单个文件或整个目录q行搜烦(ch)。通过菜单[Search->Find]或[Search –> Find in Files]来打开搜烦(ch)对话框?/p> <p>    Alt + G ?Ctrl + Alt + Gq两个快捷键用于打开 文g/函数 跌{对话框,只要输入文g/函数的名Uͼ可以很方便的蟩转到指定文g或函数。文件名/函数名搜索还支持 * ?? {能配符。(译者注Q可以用Visual Assist插g在VS中实现类似的功能。这两个功能真的很方便实用。)(j)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/select_func.gif" alt="select_func" title="select_func" /> </a>    <a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/select_func.gif" alt="select_func" title="select_func" /> </a> </p> <p align="left">    <strong>提示Q?/strong> 使用Ctrl + PgUp ?Ctrl + PgDn可以在前后函C间蟩转?/p> <p align="left">    在文本编辑器中,使用快捷键Ctrl + Tag可以在当前所有打开的文件之间蟩转。(译者注QVS也有cM的功能,而且快捷键也是Ctrl + TagQ这是y合吗Q)(j)</p> <p><img src="http://www.ejiangshan.net/jinlidong/codeblock/ctrl_tab.gif" alt="在打开文章之间跌{" /> </p> <p align="center"><a> </a> </p> <p align="left">        昄行号。通过菜单[Settings->General Settings]Q选中[Show line numbers]来显C受用快捷键 Ctrl + G 可以快速的跌{到指定行?/p> <h5>1.10.6 W号视图QSymbol viewQ?/h5> <p>    CodeBlocks理H口提供的符可图,以树(wi)的Ş式显C(DQC/C++源文件中的类、函数、变量定义。可以选择W号昄的区域是Q当前文件、当前项目、整个解x案。(译者注Q与VS的类视图面板实现cM的功能。)(j)</p> <p><img src="http://www.ejiangshan.net/jinlidong/codeblock/symbols.gif" alt="W号视图" height="352" width="274" /></p> <p> </p> <p align="center"><a> </a> </p> <p>    <strong>提示Q?/strong> 在搜索输入框中输入符L(fng)名称Q符h览器会(x)qo(h)不符条g的符受?/p> <p>    W号视图符号分为如下分c:(x)</p> <ul><li>        Global functions: 全局函数Q? </li><li>        Global typedefs: 通过typedef定义的别名; </li><li>        Global variablesQ全局变量Q? </li><li>        Preprocessor symbols: 通过#define宏定义的预处理指C符Q?</li></ul> <p>    l构和类的定义显C在pre-processor symbols下面。如果一个分c被选中Q属于该分类的标识符显C在视图的下半部分。双击这些标识符Q代码编辑器定位到定义q些标识W的文g所在处?/p> <h5>1.10.7 集成外部的帮助文?/h5> <p>    CodeBlocks支持d外部的帮助文集成到开发环境中。通过菜单[Settings->Environment]来设|。把你选择的chm格式的文以d到Help FilesQƈ其作ؓ(f)默认的帮助文,在编辑器中选择一个函敎ͼ对应的文就?x)出现通过快捷键F1?#8230;</p> <h5>1.10.8 集成外部工具</h5> <p>    通过菜单[Tools->Configuration Tools–>Add]Q把外部工具集成到CodeBlocks开发环境中。这些外部的工具允许以参数的形式讉KCodeBlocks的内?(Built-in)变量Q如当前目所在的文g?{PROJECT_DIR}Q。利用这个功能,我们lC(j)odeBlocksd一个菜单项Q打开当前 目所在的文g夏V请看图Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/config_tool.gif" alt="集成外部工具" title="集成外部工具" /> </a> </p> <p>Q译者注Q这是一个非常实用的功能。利用这个功能,我在我的CodeBlocks中,d?jin)三个我最常用的菜单项Q用Notepad++打开当前文gQ打开当前目所在的文g夹;以DosH口打开当前文g夏V爽歪歪~~Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/external_tool.gif" alt="external_tool" title="external_tool" /> </a> </p> <h4>1.11 使用CodeBlocks的小提示QTipsQ?/h4> <p>    q节我们展CZ些CodeBlocks非常有用的提C?/p> <h5>1.11.1 修改跟踪QTracking of ModificationsQ?/h5> <p>    CodeBlocks通过行号旁边的小坚条颜色来跟t源文g的修攏V未保存的修改行被标记为黄Ԍ而已保存的修改行标记为绿艌Ӏ你可以通过菜单[Search->Goto next changed line]或者[Search->Goto previous changed line]在修改内容之间导航(对应的快捷键? Ctrl + F3 ?Ctrl + Shift + F3Q。(译者注QVS也提供类型的功能。)(j)</p> <p><img src="http://www.ejiangshan.net/jinlidong/codeblock/trace_modify.GIF" alt="跟踪文本修改" height="336" width="460" /> </p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/trace_modify_.gif" alt="trace_modify" title="trace_modify" /> </a> </p> <p>    可以通过菜单[Settings->Editor->Margins and caret]Q取消选中[Use Changebar]来取消该功能?/p> <p><strong>    提示Q?/strong> 如果文g被关闭,记录在该文g上的undo/redo信息和修Ҏ(gu)?changebars)会(x)清空。如果文件处理打开状态,可以通过菜单[Edit->Clear changes history]或者右键菜单相应选项来显式地清空q些信息?/p> <h5>1.11.2 与其他应用程序交?/h5> <p>    CodeBlocks能够在运行时与其他应用程序进行交互。windows下通过DDEQDynamic Data ExchangeQ实现这U进E间的交互,而在其他操作pȝ下,ZTCP来实C互?/p> <p>    以下语法的命令可以发送给C(j)odeBlocksq行实例Q?/p> <p>        [<command>(“<parameter>”)</p> <p>    当前可以使用的命令:(x)</p> <p>        OpenQ? 命o(h)[Open(“D:\Temp\test.txt”)]Q在CodeBlocks实例中(或者启动新的CodeBlocksq程Q如果需要的话)(j)打开一个文件?/p> <p>        OpenLineQ命令[OpenLine(“D:\Temp\test.txt:10”)]Q在CodeBlocks中打开文gQƈ定位到指定行敎ͼ冒号后面的数字用于指定行受(译者注Q不是很明白原文的意思:(x)This command opens a le at a given line number in a CodeBlocksi nstance.Q?/p> <p>        RaiseQ让CodeBlocks实例获得焦点。不q该命令提供参数?/p> <h5>1.11.3 配置环境变量</h5> <p>    操作pȝ的配|信息被定义在环境变量中。例如环境变量Path包含一个编译器的安装目录\径,操作pȝ在运行期间都可以随时讉K该环境变量。如果同一~译器的另一个版本被安装Q就可能?x)发生错误,如?x)调用的编译器版本不正?/p> <p>    有时候因为项目的需要,必须在同一机器上安装同一~译器的不同版本。ؓ(f)?jin)避免上q错误的发生Q可以在目启动之前修改环境变量。显?dng)q个Ҏ(gu)很容易出 错,很不灉|。基于这个问题,CodeBlocks提供?jin)一个简单的解决Ҏ(gu)Q创Z同版本的、只能在CodeBlocks内用的环境变量Q然后根据项 目的需要选择适当的版本环境变量。通过菜单[Settings->Environment]Q在Environment Varibales面板中点击Create按钮创徏不同版本的环境变量,如下图:(x)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/envir_var.jpg" alt="环境变量讄" title="环境变量讄" /> </a>  </p> <h5>1.11.4 切换布局</h5> <p>    CodeBlocks可以Ҏ(gu)手头d的需要选择不同的配|?视图Qƈ保存q些配置/视图。默认情况下q些配置保存在default.conf文g里。以 命o(h)行方式启动CdoeblocksQƈ传?-personality=ask参数Q就可以在列出的个性化配置列表中选择一个视囑֐动。有时候,你可?希望在应用程序的使用q程中切换布局Q如~码模式与调试模式下可能需要不同的布局。CodeBlocks提供?jin)一U机制来实现q种需求,通过菜单 [View->Layouts->Save current]Qƈ输入布局的命名,保存布局。通过[View->Layouts->Layout name]来切换布局。(译者注Q笔者用的版本Q通过[View->Perspectives]来保存\切换布局Q如下图Q)(j)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/layout_switch.gif" alt="切换布局" title="切换布局" /> </a> </p> <h5>1.11.5 目切换</h5> <p>    多个目同时在CodeBlocks中打开Ӟ用户希望快速的在这些项目之间切换。CodeBlocks提供一l快捷键来实玎ͼ(x)</p> <ul><li>       <strong>Alt + F5</strong> Q将视图中前一个项目设为激z?Active)目。(译者注Q类gVS中将某个目设ؓ(f)启动目。)(j) </li><li>        <strong>Alt + F6Q?/strong> 视图中后一个项目设为激z项目? </li><li>        <strong>F11Q?/strong> 在编辑器中切换源文g(name.cpp)和头文g(name.h)?</li></ul> <h5> </h5> <h5>1.11.6 扩展~译器设|?/h5> <p>    在编译一个项目的q程中,~译信息会(x)昄在消息窗口的Build Log视图中。如果你惌取更详细的编译信息,通过菜单[Settings->Compiler and Debugger]Q在Other Settings面板中选择Compiler logging下拉列表:(x)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/compiler_setting.gif" alt="~译选项讄" title="~译选项讄" /> </a> </p> <p>    “Full command line”选项意味着在Build Log视图中显C所有的~译信息。可以将q些日志信息保存为HTML文gQ通过选中”Save build log to HTML file when finished’。另外,通过选中”Display build process bar”QCodeBlocks支持在Build Log视图中显C编译进度?/p> <h5>1.11.7 ~辑器羃?/h5> <p>    CodeBlocks提供?jin)一个非帔R效的~辑器。这个编辑器允许你羃放打开文本的字体大。如果你的鼠标有滚轮Q你只要按住Ctrl键,同时滚支鼠标滚轮Q就可以实现文本的羃放?/p> <p>    <strong>提示Q?/strong> 通过菜单[Edit->Special commands->Zoom->Reset]来重|羃放?/p> <h5>1.11.8 自动换行模式</h5> <p>    在CodeBlcoks中打开一个文本文Ӟ使用自动换行模式可以很长的行以多行的Ş式显C在一个屏q内Q有利于~辑。通过菜单[Settings->Editor->Other Options]Q选中Word warp来激z自动换行模式?#8230;</p> <h5>1.11.9 块选文?/h5> <p>    CodeBlocks支持在代码编辑器中块选文本。按住Alt键的同时按住鼠标左键在编辑器选择一块区域。如果你想选择数组的几列进行复制和_脓(chung)Q这个功能是非常有用的(译者注QVS也提C类似的功能Q快捷键也一栗)(j)。如图:(x)</p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/block_select.gif" alt="块选文? title="块选文? /> </a> </p> <h5>1.11.10 代码折叠</h5> <p>    CodeBlocks支持代码折叠Q允许将函数、类的实现折叠v来?/p> <p>    <strong>提示Q?/strong> 通过菜单[Settings->Editor->Folding]Q可以设|代码折叠的样式和层ơ限Ӟdepth limitQ?/p> <h5>1.11.11 自动完成</h5> <p>   在CodeBlocks中打开一个项目时Q编译器的相关目录(include目录Q与目的源文g/头文件将被解析,提取有关cd定义、函数、宏{的?息,CodeBlocks使用q些信息来实现自动完成功能。通过菜单[Settings->Editors->Code completion]启用该功能,通过快捷?Ctrl + Space 来显C提CZ息(译者注Q默认的快捷?Ctrl + Space 不适合中国人的键盘?fn)惯Q徏议改成其他快捷键。)(j)。通过[Settings->Editor->Syntax highlighting]Q你可以d自定义的关键字?/p> <h5>1.11.12 查找破损文gQF(tun)ind broken filesQ?/h5> <p>    如果一个文件已l从盘中删除,但它仍然被包含在目文g(project.cbp)中(译者注Q项目的文g信息保存?.cbp文g里。)(j)Q这个文件在目面板中显CZ个破损符P如下图)(j)。应该通过上下文菜单[Remove file from project]它从项目中U除?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/borken_file.gif" alt="borken_file" title="borken_file" /> </a> </p> <p>    一个大的工E可能包含许多子文g夹,搜烦(ch)破损文g?x)非常花?gu)间。CodeBlocks提供ThreadSearch插g来解册个问题。在ThreadSearch中输入要查找的表辑ּQƈ讄查找的范_(d)(x)“Project files”或?#8220;Workspace files”QThreadSearch会(x)分析所有包括在目或者解x案中的文件。当ThreadSearch扑ֈ一个跋损文件的时候,?x)发Z个文件丢q错误?/p> <h5>1.11.13 包含?/h5> <p>    在项目的~译选项中,你可以通过”Add”按键d目所使用的库。库可以以绝对\径的形式l出Q也可以只给出名U而无需提供lib前缀和文件扩展名?/p> <p>    例如Q存在这L(fng)一个库文gQ?lt;path>\libs\lib<name>.aQ只要给?lt;name>Q链接器可以找到对应的库文件?/p> <h5>1.11.14 对象链接序</h5> <p>    在编译过E中Q源文gname.c/cpp会(x)被编译成目标文gname.oQ然后链接器把独立的目标文g链接成可执行文gname.exeQ对于嵌入式 pȝQ将链接成name.elfQ。这U情况下Q可能需要预先定义对象链接的序。在CodeBlocks中,可以讄相关源文件的优先U来实现。在上下 文菜单中选择[Properties]Q在Build标签中定义。较低优先使文件较先链接?/p> <h5>1.11.15 自动保存</h5> <p>    CodeBlcoks允许自动保存当前正在~辑的文件和目Q或者对它们q行备䆾。可以通过菜单[Settings->Environment->Autosave]来激z该功能?/p> <h5>1.11.16 文g扩展名设|?/h5> <p>    在CodeBlocks中,可以选择多次方式来处理文件不同后~的文Ӟ可以在菜单[Settings->Environment settings->Files extension handling]讄相应的处理方式:(x)“Launch an external program”指定外部E序来打开文gQ?#8220;Launch the associated application”使用pȝ默认E序来打开文gQ?#8220;Open it in Code::Blocks editor”使用Code::Blocks~辑器来打开文g。如下图Q?/p> <p align="center"><a><img style="border: 0pt none; display: inline;" src="http://www.ejiangshan.net/jinlidong/codeblock/file_handle.gif" alt="文g处理方式" title="文g处理方式" /> </a>  </p> <h4>1.12 通过命o(h)行操作CodeBlocks</h4> <p>    CodeBlocks能够通过命o(h)行来q行。在q种情况下,需要通过一些选项来控刉目的构徏q程。因为CodeBlocks是scriptable的,所以CodeBlocks目的构建可以集成到你自q工作q程中?/p> <p>    codeblocks.exe /na /nd --no-splash-screen --built <name>.cbp --target=’Release’</p> <p><filename> 指定CodeBlock目文g(*.cbp)或解x案文?*.workspace)?/p> <p>--file=<filename>[:line]Q用CodeBlocks打开指定文g。可选的行号指示代码~辑器蟩转到该行?/p> <p>/h, --helpQ显C帮助信息?/p> <p>/na, --no-check-associationsQ不执行文g兌(g)查。(windows only)</p> <p>/nd, --no-ddeQ不启动DDE服务?windows only)</p> <p>/ni, --no-ipcQ不启动IPC服务?Linux and Mac only)</p> <p>/ns, --no-splash-screenQ应用程序启动的时候,不显C启动画面?/p> <p>/d, --debug-logQ显C应用程序的调试日志</p> <p>--prefix=<str>Q设|共享数据文件夹的前~</p> <p>/p, --personality=<str>, --profile=<str>Q设|要使用的个性化配置。你可以使用“ask”参数来列出可选择的个性化配置?/p> <p>--rebuildQ清理ƈ重新~译工程或解x案?/p> <p>--buildQ编译工E或解决Ҏ(gu)?/p> <p>--target=<str>Q设|编译模式,如:(x)--target=’Release’</p> <p>--no-batch-window-closeQ编译完成的时候,不关闭日志窗口?/p> <p>--batch-build-notifyQ编译完成的时候显C提CZ?/p> <p>--safe-modeQ启动的时候,所有插仉不可用?/p> <p>> <build log file>Q重定向标准输出到日志文件。这是标准DOS/*nix shell的输出重定向Qƈ非CodeBlocks内置选项?/p> <h4>1.13 快捷?/h4> <p>    在IDE中用快捷键比用鼠标更为高效。下表给出CodeBolcks默认的快捷键。(译者注Q笔者将CodeBlocks中的快捷键设|ؓ(f)与VS大体一_(d)使用CodeBlocks旉帔R手。)(j)</p> <table style="border: 1px solid gray; border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0"> <tbody> <tr style="border: 1px solid gray; background: none repeat scroll 0% 0% #ececec;"> <th>Function </th> <th>Shortcut Key </th> </tr> <tr> <td>Undo last action </td> <td>Ctrl + Z </td> </tr> <tr> <td>Redo last action </td> <td>Ctrl + Shift + Z </td> </tr> <tr> <td>Cut selected text </td> <td>Ctrl + X </td> </tr> <tr> <td>Copy selected text </td> <td>Ctrl + C </td> </tr> <tr> <td>Paste text from clipboard </td> <td>Ctrl + V </td> </tr> <tr> <td>Select all text </td> <td>Ctrl + A </td> </tr> <tr> <td>Swap header / source </td> <td>F11 </td> </tr> <tr> <td>Comment highlighted code </td> <td>Ctrl + Shift + C </td> </tr> <tr> <td>Uncomment highlighted code </td> <td>Ctrl + Shift + X </td> </tr> <tr> <td>Duplicate line caret is on </td> <td>Ctrl + D </td> </tr> <tr> <td>Auto-complete / Abbreviations </td> <td>Ctrl + Space / Ctrl + J </td> </tr> <tr> <td>Show call tip </td> <td>Ctrl + Shift + Space </td> </tr> <tr> <td>Swap line caret is on with line above it </td> <td>Ctrl + T </td> </tr> <tr> <td>Toggle bookmark </td> <td>Ctrl + B </td> </tr> <tr> <td>Goto previous bookmark </td> <td>Alt + PgUp </td> </tr> <tr> <td>Goto next bookmark </td> <td>Alt + PgDown </td> </tr> <tr> <td>Toggle current block folding </td> <td>F12 </td> </tr> <tr> <td>Toggle all folds </td> <td>Shift + F12 </td> </tr> </tbody> </table> <p>CodeBlocks代码~辑器组件提供的快捷键,q些快捷键不能重新绑定(reboundQ?/p> <table style="border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0"> <tbody> <tr style="border: 1px solid gray; background: none repeat scroll 0% 0% #ececec;"> <th>Function </th> <th>Shortcut Key </th> </tr> <tr> <td>Magnify text size. </td> <td>Ctrl + Keypad "+" </td> </tr> <tr> <td>Reduce text size. </td> <td>Ctrl + Keypad "-" </td> </tr> <tr> <td>Restore text size to normal. </td> <td>Ctrl + Keypad "/" </td> </tr> <tr> <td>Cycle through recent files. </td> <td>Ctrl + Tab </td> </tr> <tr> <td>Indent block. </td> <td>Tab </td> </tr> <tr> <td>Dedent block. </td> <td>Shift + Tab </td> </tr> <tr> <td>Delete to start of word. </td> <td>Ctrl + BackSpace </td> </tr> <tr> <td>Delete to end of word. </td> <td>Ctrl + Delete </td> </tr> <tr> <td>Delete to start of line. </td> <td>Ctrl + Shift + BackSpace </td> </tr> <tr> <td>Delete to end of line. </td> <td>Ctrl + Shift + Delete </td> </tr> <tr> <td>Go to start of document. </td> <td>Ctrl + Home </td> </tr> <tr> <td>Extend selection to start of document. </td> <td>Ctrl + Shift + Home </td> </tr> <tr> <td>Go to start of display line. </td> <td>Alt + Home </td> </tr> <tr> <td>Extend selection to start of display line. </td> <td>Alt + Shift + Home </td> </tr> <tr> <td>Go to end of document. </td> <td>Ctrl + End </td> </tr> <tr> <td>Extend selection to end of document. </td> <td>Ctrl + Shift + End </td> </tr> <tr> <td>Go to end of display line. </td> <td>Alt + End </td> </tr> <tr> <td>Extend selection to end of display line. </td> <td>Alt + Shift + End </td> </tr> <tr> <td>Expand or contract a fold point. </td> <td>Ctrl + Keypad "*" </td> </tr> <tr> <td>Create or delete a bookmark. </td> <td>Ctrl + F2 </td> </tr> <tr> <td>Go to next bookmark. </td> <td>F2 </td> </tr> <tr> <td>Select to next bookmark. </td> <td>Alt + F2 </td> </tr> <tr> <td>Find selection. </td> <td>Ctrl + F3 </td> </tr> <tr> <td>Find selection backwards. </td> <td>Ctrl + Shift + F3 </td> </tr> <tr> <td>Scroll up. </td> <td>Ctrl + Up </td> </tr> <tr> <td>Scroll down. </td> <td>Ctrl + Down </td> </tr> <tr> <td>Line cut. </td> <td>Ctrl + L </td> </tr> <tr> <td>Line copy. </td> <td>Ctrl + Shift + T </td> </tr> <tr> <td>Line delete. </td> <td>Ctrl + Shift + L </td> </tr> <tr> <td>Line transpose with previous. </td> <td>Ctrl + T </td> </tr> <tr> <td>Line duplicate. </td> <td>Ctrl + D </td> </tr> <tr> <td>Find matching preprocessor conditional, skipping nested ones. </td> <td>Ctrl + K </td> </tr> <tr> <td>Select to matching preprocessor conditional. </td> <td>Ctrl + Shift + K </td> </tr> <tr> <td>Find matching preprocessor conditional backwards, skipping nested ones. </td> <td>Ctrl + J </td> </tr> <tr> <td>Select to matching preprocessor conditional backwards. </td> <td>Ctrl + Shift + J </td> </tr> <tr> <td>Previous paragraph. Shift extends selection. </td> <td>Ctrl + [ </td> </tr> <tr> <td>Next paragraph. Shift extends selection. </td> <td>Ctrl + ] </td> </tr> <tr> <td>Previous word. Shift extends selection. </td> <td>Ctrl + Left </td> </tr> <tr> <td>Next word. Shift extends selection. </td> <td>Ctrl + Right </td> </tr> <tr> <td>Previous word part. Shift extends selection. </td> <td>Ctrl + / </td> </tr> <tr> <td>Next word part. Shift extends selection. </td> <td>Ctrl + \ </td> </tr> </tbody> </table> <p><a id="Files" name="Files"></a> </p> <h2>Files </h2> <table style="border: 1px solid gray; border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0"> <tbody> <tr style="border: 1px solid gray; background: none repeat scroll 0% 0% #ececec;"> <th>Function </th> <th>Shortcut Key </th> </tr> <tr> <td>New file or project </td> <td>Ctrl + N </td> </tr> <tr> <td>Open existing file or project </td> <td>Ctrl + O </td> </tr> <tr> <td>Save current file </td> <td>Ctrl + S </td> </tr> <tr> <td>Save all files </td> <td>Ctrl + Shift + S </td> </tr> <tr> <td>Close current file </td> <td>Ctrl + F4 / Ctrl + W </td> </tr> <tr> <td>Close all files </td> <td>Ctrl + Shift + F4 / Ctrl + Shift + W </td> </tr> </tbody> </table> <p>CodeBlocks的Tablg所提供的快捷键Q这些快捷键不能重新l定QreboundQ?/p> <table style="border: 1px solid gray; border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0"> <tbody> <tr style="border: 1px solid gray; background: none repeat scroll 0% 0% #ececec;"> <th>Function </th> <th>Shortcut Key </th> </tr> <tr> <td>Activate next open file </td> <td>Ctrl + Tab </td> </tr> <tr> <td>Activate previous open file </td> <td>Ctrl + Shift + Tab </td> </tr> </tbody> </table> <p><a id="View" name="View"></a> </p> <h2>View </h2> <table style="border: 1px solid gray; border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0"> <tbody> <tr style="border: 1px solid gray; background: none repeat scroll 0% 0% #ececec;"> <th>Function </th> <th>Shortcut Key </th> </tr> <tr> <td>Show / hide Messages pane </td> <td>F2 </td> </tr> <tr> <td>Show / hide Management pane </td> <td>Shift + F2 </td> </tr> <tr> <td>Move project up (in Project tree) </td> <td>Ctrl + Shift + Up </td> </tr> <tr> <td>Move project down (in Project tree) </td> <td>Ctrl + Shift + Down </td> </tr> <tr> <td>Activate prior (in Project tree) </td> <td>Alt + F5 </td> </tr> <tr> <td>Activate next (in Project tree) </td> <td>Alt + F6 </td> </tr> <tr> <td>Zoom in / out </td> <td>Ctrl + Roll Mouse Wheel </td> </tr> <tr> <td>Focus editor </td> <td>CTRL + Alt + E </td> </tr> </tbody> </table> <p><a id="Search" name="Search"></a> </p> <h2>Search </h2> <table style="border: 1px solid gray; border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0"> <tbody> <tr style="border: 1px solid gray; background: none repeat scroll 0% 0% #ececec;"> <th>Function </th> <th>Shortcut Key </th> </tr> <tr> <td>Find </td> <td>Ctrl + F </td> </tr> <tr> <td>Find next </td> <td>F3 </td> </tr> <tr> <td>Find previous </td> <td>Shift + F3 </td> </tr> <tr> <td>Find in files </td> <td>Crtl + Shift + F </td> </tr> <tr> <td>Replace </td> <td>Ctrl + R </td> </tr> <tr> <td>Replace in files </td> <td>Ctrl + Shift + R </td> </tr> <tr> <td>Goto line </td> <td>Ctrl + G </td> </tr> <tr> <td>Goto next changed line </td> <td>Ctrl + F3 </td> </tr> <tr> <td>Goto previous changed line </td> <td>Ctrl + Shift + F3 </td> </tr> <tr> <td>Goto file </td> <td>Alt + G </td> </tr> <tr> <td>Goto function </td> <td>Ctrl + Alt + G </td> </tr> <tr> <td>Goto previous function </td> <td>Ctrl + PgUp </td> </tr> <tr> <td>Goto next function </td> <td>Ctrl + PgDn </td> </tr> <tr> <td>Goto declaration </td> <td>Ctrl + Shift + . </td> </tr> <tr> <td>Goto implementation </td> <td>Ctrl + . </td> </tr> <tr> <td>Open include file </td> <td>Ctrl + Alt + . </td> </tr> </tbody> </table> <p><a id="Build" name="Build"></a> </p> <h2>Build </h2> <table style="border: 1px solid gray; border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0"> <tbody> <tr style="border: 1px solid gray; background: none repeat scroll 0% 0% #ececec;"> <th>Function </th> <th>Shortcut Key </th> </tr> <tr> <td>Build </td> <td>Ctrl + F9 </td> </tr> <tr> <td>Compile current file </td> <td>Ctrl + Shift + F9 </td> </tr> <tr> <td>Run </td> <td>Ctrl + F10 </td> </tr> <tr> <td>Build and Run </td> <td>F9 </td> </tr> <tr> <td>Rebuild </td> <td>Ctrl + F11 </td> </tr> </tbody> </table> <p><a id="Debug" name="Debug"></a> </p> <h2>Debug </h2> <table style="border: 1px solid gray; border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0"><tbody><tr style="border: 1px solid gray; background: none repeat scroll 0% 0% #ececec;"> <th>Function </th> <th>Shortcut Key </th> </tr> <tr> <td>Debug </td> <td>F8 </td> </tr> <tr> <td>Continue debugging </td> <td>Ctrl + F7 </td> </tr> <tr> <td>Step over a code block </td> <td>F7 </td> </tr> <tr> <td>Step into a code block </td> <td>Shift + F7 </td> </tr> <tr> <td>Step out of a code block </td> <td>Ctrl + Shift + F7 </td> </tr> <tr> <td>Toggle breakpoint </td> <td>F5 </td> </tr> <tr> <td>Run to cursor </td> <td>F4 </td> </tr> <tr> <td>Previous error </td> <td>Alt + F1 </td> </tr> <tr> <td>Next error </td> <td>Alt + F2 </td></tr></tbody></table></div><img src ="http://www.shnenglu.com/grass-and-moon/aggbug/185425.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/grass-and-moon/" target="_blank">钟谢?/a> 2012-07-28 09:16 <a href="http://www.shnenglu.com/grass-and-moon/archive/2012/07/28/185425.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>XQ搁W快两周?/title><link>http://www.shnenglu.com/grass-and-moon/archive/2012/07/25/185075.html</link><dc:creator>钟谢?/dc:creator><author>钟谢?/author><pubDate>Wed, 25 Jul 2012 14:39:00 GMT</pubDate><guid>http://www.shnenglu.com/grass-and-moon/archive/2012/07/25/185075.html</guid><wfw:comment>http://www.shnenglu.com/grass-and-moon/comments/185075.html</wfw:comment><comments>http://www.shnenglu.com/grass-and-moon/archive/2012/07/25/185075.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/grass-and-moon/comments/commentRss/185075.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/grass-and-moon/services/trackbacks/185075.html</trackback:ping><description><![CDATA[一下子快q了(jin)两周的时间了(jin)Q忙zd?jin),调一个数据拟合的东西Q发现拟合的东西是一U很坑爹的事情,初值的讑֮Q是一件不Ҏ(gu)的事情呀Q变量的数量一多,那调整的隑ֺ更是一跃而上Q花?jin)两个周的时_(d)调出?jin)一个勉强符合规范的l果Q诶Q感觉像是浪费了(jin)旉Q青春呀。。。?img src ="http://www.shnenglu.com/grass-and-moon/aggbug/185075.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/grass-and-moon/" target="_blank">钟谢?/a> 2012-07-25 22:39 <a href="http://www.shnenglu.com/grass-and-moon/archive/2012/07/25/185075.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>学习(fn)auto_ptrhttp://www.shnenglu.com/grass-and-moon/archive/2012/07/13/183208.html钟谢?/dc:creator>钟谢?/author>Fri, 13 Jul 2012 10:00:00 GMThttp://www.shnenglu.com/grass-and-moon/archive/2012/07/13/183208.htmlhttp://www.shnenglu.com/grass-and-moon/comments/183208.htmlhttp://www.shnenglu.com/grass-and-moon/archive/2012/07/13/183208.html#Feedback4http://www.shnenglu.com/grass-and-moon/comments/commentRss/183208.htmlhttp://www.shnenglu.com/grass-and-moon/services/trackbacks/183208.html前言Q?/p>

一个变量在声明中通过另一个对象进行赋?/p>

    • Person q("Mickey"); // constructor is used to build q
    • Person r(q);           // copy constructor is used to build r
    • Person p = q;         // copy constructor is used to initialize in declaration
    • P = q;                    // assignment operator, no constructor or copy constructor
  • 函数参数传递中
    • f(p);
  • 函数q回一个对象时

具体内容Q?/p>

1. 关于auto_ptr解析

2. auto_ptr_ref



]]>
诅R计机U学概论?2. 数据操控http://www.shnenglu.com/grass-and-moon/archive/2012/07/10/182619.html钟谢?/dc:creator>钟谢?/author>Tue, 10 Jul 2012 07:05:00 GMThttp://www.shnenglu.com/grass-and-moon/archive/2012/07/10/182619.htmlhttp://www.shnenglu.com/grass-and-moon/comments/182619.htmlhttp://www.shnenglu.com/grass-and-moon/archive/2012/07/10/182619.html#Feedback0http://www.shnenglu.com/grass-and-moon/comments/commentRss/182619.htmlhttp://www.shnenglu.com/grass-and-moon/services/trackbacks/182619.html1. 通用寄存器用于(f)时存储由CPU正在操纵的数据。这些寄存器存储术/逻辑单元?sh)\的输入g?qing)该部g所产生的结果?/p>

2. 利用ȝQCPUl出相关存储单元的地址以及(qing)相应的电(sh)信号Q告知存储电(sh)路,在指定单元中获取数据)(j)Q从d储器中取出数据?/p>

3. 通用寄存器用于存储操作中马上用到的数据,d储器用于存储不久p用到的数据,量存储器用于存储暂时不?x)用到的数据?/p>

4. 不管是精指o(h)集计机q是复杂指o(h)集计机Q机器指令可以分?c:(x)Q?Q数据传输类Q(2Q算?逻辑c;Q?Q控制类

5. 计算Z其他讑֤的通信通常是通过UCؓ(f)控制器的中间讑֤来处理的?/p>

6. 因ؓ(f)控制器是q接C台计机的ȝ上的Q因此它?yu)有可能在CPU不用ȝ的几U秒旉里实现它与主存储器的通信Q控制器q种存取d储器的能力称为直接存储器存取QDMAQ。它的不利媄(jing)响是Q计算机ȝ的通信复杂化?/p>

7. 计算Z生字Wƈ向打印机发送字W的速度要远q快于打印机能够打印的速度Q计机盲目地将数据发送给打印机,可能的结果会(x)使得数据丢失。因此,诸如打印文gq样的过E都?x)包括持l的双向对话Q计机和外围设备之间交换设备状态的信息Q协调它们之间的zd。这个过E称为握手?/p>

]]>
templateshttp://www.shnenglu.com/grass-and-moon/archive/2012/07/09/182374.html钟谢?/dc:creator>钟谢?/author>Mon, 09 Jul 2012 06:48:00 GMThttp://www.shnenglu.com/grass-and-moon/archive/2012/07/09/182374.htmlhttp://www.shnenglu.com/grass-and-moon/comments/182374.htmlhttp://www.shnenglu.com/grass-and-moon/archive/2012/07/09/182374.html#Feedback0http://www.shnenglu.com/grass-and-moon/comments/commentRss/182374.htmlhttp://www.shnenglu.com/grass-and-moon/services/trackbacks/182374.html阅读全文

]]>
޾Ʒھþ| ޾ƷþþþþͼƬ| 99þĻ| þ99Ʒһ| ŷպۺϾþ| ŷvaþþþ| ƷëٸAVѾþ| һһþۺϺݺ| Ʒþþþû| ڵСþþþþþ| Ʒ99þþþþwww| һһþAþۺϾƷ | þþƷһ99| 99þ99þþƷѿ| ѾƷպȾþ| 91Ʒ91þþþþ| AëƬþþƷ| 99þùۺϾƷӰԺ| 99þùں;Ʒ1ӳ| ݺݾþۺ| þþ91Ʒһ| һһþaaۺϾƷ| þþþþྫƷֱ| 99þ777ɫ| þþAVɫۺ| þþþAVרJN| þùƷһ| þþþžоƷ| ޾Ʒtvþþþþþþ| þùɫavѿ| ҹþAAAAAëƬѿ| ŮƷþþ| þþþۺþ| ۲ӰԺþùƷ| þ99Ʒþþ| Ҳȥþۺ| ɫ8þ97㽶987| Ļþþþ| ҹƷþþþþþ| vaĻþ| ŷ߽˾þ|