1.Pelles CPelles C 简介
2.å大ç¨åºç¼è¯å¨ï¼
3.lcc币合法吗
4.Lccwin32 C CompilerçLccwin32 C Compiler使ç¨ä»ç»
5.编译器有哪些软件编译器有哪些
Pelles CPelles C 简介
Pelles C是源译一款全面的C语言开发工具包,专为Windows和PocketPC环境设计。码编
它整合了一个优化的源译C编译器、连接器、码编资源编译器、源译消息编译器、码编pdfreader源码make实用程序以及安装包制作工具。源译
除了强大的码编编译功能,Pelles C还配备了一个集成开发环境(IDE)和项目管理器,源译拥有调试器、码编源代码编辑器和资源编辑器对话框,源译可进行菜单、码编字符串表、源译js修改网页源码位图、码编图标、源译光标、动画影片(不包含声音的AVI文件)等应用程序资源的编辑。
其编译器基于LCC,而安装程序则基于适用于Windows的NSIS安装包。Pelles C全面支持最新c和C标准,是一款完全免费的软件。
它具有强大的功能,能完全替代Turbo C,适用于Windows和PocketPC环境,为开发者提供高效、cci副图源码全面的C语言开发支持。
无论是构建项目,还是对应用程序资源进行编辑,Pelles C都能提供便捷的解决方案,其支持的最新C语言标准和免费的特性,使其成为C语言开发者的理想选择。
总之,Pelles C是一款功能强大、全面支持最新C语言标准的C语言开发工具包,其集成的IDE、支持的资源编辑功能,以及完全免费的cas server登录源码特点,使得它在Windows和PocketPC环境中,为开发者提供了高效的编程体验。
å大ç¨åºç¼è¯å¨ï¼
C++çç¼è¯å¨é½æåªäº?
kDevelopãAnjutaãCodeBlocksãVisualMingwãIdeoneãEclipseCDTãCompilrãCodeLiteãNetbeansC++ãDev?C++ã
Kdevelopæ¯ä¸ä¸ªä¸ä¸ºC/C++åå ¶ä»è¯è¨çå¼æºæ©å±æ件IDEï¼å®åºäºKDevPlatformå¹³å°ï¼è¿æ¯ä¸æ¬¾å¯ç¨äºIDEåºç¡å¼æºåºã
AnjutaDevstudioæ¯å¦å¤ä¸æ¬¾å¼ºå¤§çå¼åå·¥å ·ï¼æ¥æå è¿çç¼ç¨ç¹æ§å æ¬é¡¹ç®ç®¡çãåºç¨ç¨åºå导ã交äºå¼è°è¯å¨ãæºç ç¼è¾å¨ãçæ¬æ§å¶ï¼GUI设计ãåæå¨ççï¼è¿æ¬¾å·¥å ·ä¸ºC/C++å¼åè æä¾å¼ºå¤§çç¨æ·çé¢æ¥å£ã
CodeBlocksæ¯ä¸æ¬¾æ¯è¾æµè¡çå è´¹ä¸å¼æºçéæå¼åç¯å¢ï¼è¯¥å·¥å ·æ¥æææåè½ï¼è½å¤æ»¡è¶³å¼åè æéï¼æ¯å¦é«æçç¨æ·çé¢ãç¼è¯åè°è¯åè½çã
Visual-MigGWæ¯ä¸æ¬¾æ为ç®åçå¼æºIDEï¼å®ææçWindowsAPIé½å¯æ¥è¿è¡ç®åå¿«éçå¼åï¼å®è¿æ¯æä¸ä¸ªéæ¶å¯ç¨çåºç¨æ¡æ¶ï¼é¡¹ç®æ管å¨SourceForge.netã
Ideoneæ¯ä¸æ¬¾å¨çº¿ç¼è¾å¨åè°è¯å·¥å ·ï¼è¿æ¬¾å·¥å ·æä¾äºå¼ºå¤§çåè½ï¼å¸®å©ç¨åºå以æ´å å¿«éææçæ¹å¼ç¼è¯æºä»£ç ã
EclipseCDTæä¾æ´å é«æçåè½ï¼å¦ï¼æ¯æ为åç§å·¥å ·é¾æä¾é¡¹ç®å建å管çãæ åæ建ãæºç 导èªãåç§ç¥è¯å·¥å ·æºï¼ä»£ç ç¼è¾å¨åè½å¦é«äº®æ¾ç¤ºãæå ãè¶ é¾æ¥å¯¼èªãæºä»£ç éæ以å代ç çæï¼å¯è§åè°è¯å·¥å ·ï¼å æ¬å åãå¯åå¨ååæ±ç¼è§å¾ã
Compileræ¯ä¸æ¬¾å¨çº¿éæå¼åå·¥å ·ï¼å è®¸ä½ ç¼å令人å°è±¡æ·±å»ç代ç åè½åç®åçç¨æ·çé¢ï¼è¯¥å·¥å ·æ¯æçè¯è¨å¦CãC++ãJavaãHTMLã
Codeliteæ¯ä¸æ¬¾æ好çå è´¹å¼æºçIDEï¼å ä¹å¯è¿è¡äºææå¹³å°ã
Netbeanså·¥å ·å å«å¤ç§ç±»å模æ¿ï¼å®æ¥æ迷人çåè½ï¼ä½¿å ¶å¨Webå¼åè æ´å æµè¡ï¼æ¯å¦ï¼ä»£ç åå©ãç¼è¯é ç½®ãåå æµè¯ãæºç æ£æµãè¿ç¨å¼ååæ件导èªçåè½ã
DevC++çåè½å æ¬ï¼ç±»æµè§å¨ãéæè°è¯ãæ¯æGCCã项ç®ç®¡çã代ç ç¼è¯ãç¼è¾ä¸ç¼è¯èµæºæ件ãå·¥å ·ç®¡çãåè½æ¸ åã
windowsçpc端ç¼è¯å¨æåªäºWindowsçpc端ç¼è¯å¨æï¼
1)VisualStudio
Windowsä¸é¦å æ¨è大家使ç¨å¾®è½¯å¼åçVisualStudioï¼ç®ç§°VSï¼ï¼å®æ¯Windowsä¸çæ åIDEï¼å®é å¼åä¸å¤§å®¶ä¹é½å¨ä½¿ç¨ã为äºéåºææ°çWindowsæä½ç³»ç»ï¼å¾®è½¯æ¯éä¸æ®µæ¶é´ï¼ä¸è¬æ¯ä¸ä¸¤å¹´ï¼å°±ä¼å¯¹VSè¿è¡å级ãVSçä¸åçæ¬ä»¥åå¸å¹´ä»½å½åï¼ä¾å¦VSæ¯å¾®è½¯äºå¹´åå¸çï¼VSæ¯å¾®è½¯äºå¹´åå¸çã
ä¸è¿VSæç¹åºå¤§ï¼å®è£ å æ2~3Gï¼ä¸è½½ä¸æ¹ä¾¿ï¼èä¸ä¼å®è£ å¾å¤ææ¶ç¨ä¸å°çå·¥å ·ï¼å®è£ æ¶é´å¨å个å°æ¶å·¦å³ã
对äºåå¦è ï¼ææ¨è使ç¨VSãæ好ä¸ç¨ä½¿ç¨VSï¼æç¹ååå¦è ã
2)Dev?C++
å¦æä½ è®¨åVSçå¤ææ§ï¼é£ä¹å¯ä»¥ä½¿ç¨DevC++ãDevC++æ¯ä¸æ¬¾å è´¹å¼æºçC/C++IDEï¼å åµ?GCC?ç¼è¯å¨ï¼LinuxGCCç¼è¯å¨çWindows移æ¤çï¼ï¼æ¯NOIãNOIP?çæ¯èµçæå®å·¥å ·ãDevC++çä¼ç¹æ¯ä½ç§¯å°ï¼åªæå åå ï¼ãå®è£ å¸è½½æ¹ä¾¿ãå¦ä¹ ææ¬ä½ï¼ç¼ºç¹æ¯è°è¯åè½å¼±ã
NOIæ¯NationalOlympiadinInformaticsç缩åï¼è¯ä¸ºâå ¨å½éå°å¹´ä¿¡æ¯å¦å¥¥æå¹å ç«èµâï¼NOIPæ¯NationalOlympiadininformaticsinProvincesç缩åï¼è¯ä¸ºâå ¨å½éå°å¹´ä¿¡æ¯å¦å¥¥æå¹å èèµâãNOIãNOIPé½æ¯å¥¥æå¹å ç«èµçä¸ç§ï¼åå è å¤ä¸ºé«ä¸çï¼è·å¥è å°è¢«ä¿éå°åç大å¦æè å¾å°é«èå åèµæ ¼ã
3)VisualC++6.0
VisualC++6.0ï¼ç®ç§°VC6.0ï¼æ¯å¾®è½¯å¼åçä¸æ¬¾ç»å ¸çIDEï¼å¾å¤é«æ ¡é½ä»¥VC6.0为æå¦å·¥å ·æ¥è®²è§£CåC++ãä½VC6.0æ¯å¹´ç产åï¼å¾å¤èäºï¼å¨Win7ãWin8ãWinä¸ä¼æåç§åæ ·çå ¼å®¹æ§é®é¢ï¼çè³æ ¹æ¬ä¸è½è¿è¡ï¼æ以ä¸æ¨è使ç¨ã
VC6.0æ©å°±è¯¥æè¿åå¾æ¡¶äºï¼å¯æ¯ä¾ç¶æå¾å¤å¤§å¦æå®ä½ä¸ºæå¦å·¥å ·ï¼å¹¶ä¸éç¨çææä¹ä»¥VC6.0为åºç¡æ¥è®²è§£Cè¯è¨åC++ï¼å¯è§æå¦ä½å¶çæ端è½åï¼è¯¾ç¨ä½ç³»çæ´æ°è¿è¿è·ä¸ä¸ææ¯çè¿æ¥ã
4)å ¶å®IDE
é¤äºä¸é¢æå°çä¸æ¬¾IDEï¼Windowså¹³å°ä¸è¿æå¾å¤å ¶ä»çIDEï¼å®ä»¬åæç¹ç¹ï¼ä¾å¦ï¼
Code::Blocksæ¯ä¸æ¬¾å¼æºã跨平å°ãå è´¹çC/C++IDEï¼å®åDevC++é常类似ï¼å°å·§çµæ´»ï¼æäºå®è£ åå¸è½½ï¼ä¸è¿å®ççé¢è¦æ¯DevC++å¤æä¸äºï¼ä¸å¦DevC++æ¥å¾æ¸ ç½ã
TurboCæ¯ä¸æ¬¾å¤èçãDOS年代çCè¯è¨å¼åå·¥å ·ï¼ç¨åºååªè½ä½¿ç¨é®çæ¥æä½TurboCï¼ä¸è½ä½¿ç¨é¼ æ ï¼æ以é常ä¸æ¹ä¾¿ãä½æ¯TurboCéæäºä¸å¥å¾å½¢åºï¼å¯ä»¥å¨æ§å¶å°ç¨åºä¸ç»å¾ï¼çèµ·æ¥é常ç«é ·ï¼æ以è³ä»ä»ç¶æ人å¨ä½¿ç¨ã
C-Freeæ¯ä¸æ¬¾å½äº§çWindowsä¸çC/C++IDEï¼ææ°çæ¬æ¯5.0ï¼æ´ä¸ªè½¯ä»¶æMï¼é常轻巧ï¼å®è£ ä¹ç®åï¼çé¢ä¹æ¯DevC++æ¼äº®ãC-Freeç缺ç¹ä¹æ¯è°è¯åè½å¼±ãå¯æçæ¯ï¼C-Freeå·²ç»å¤å¹´ä¸æ´æ°äºï¼ç»ä»¶é½èäºï¼åªè½å¨XPãWin7ä¸è¿è¡ï¼å¨Win8ãWinä¸å¯è½ä¼åå¨å ¼å®¹æ§é®é¢ã
常è§çCè¯è¨ç¼è¯å¨æ¯ä»ä¹ï¼ç®åææµè¡çCè¯è¨ç¼è¯å¨æ以ä¸å ç§ï¼
1ãGNUCompilerCollectionæ称?GCC
GCCï¼GNUCompilerCollectionï¼GNUç¼è¯å¨å¥ä»¶ï¼ï¼æ¯ç±GNUå¼åçç¼ç¨è¯è¨ç¼è¯å¨ãå®æ¯ä»¥GPL许å¯è¯æåè¡çèªç±è½¯ä»¶ï¼ä¹æ¯GNU计åçå ³é®é¨åã
GCCåæ¬ä½ä¸ºGNUæä½ç³»ç»çå®æ¹ç¼è¯å¨ï¼ç°å·²è¢«å¤§å¤æ°ç±»Unixæä½ç³»ç»ï¼å¦LinuxãBSDãMacOSXçï¼é纳为æ åçç¼è¯å¨ï¼GCCåæ ·éç¨äºå¾®è½¯çWindowsãGCCæ¯èªç±è½¯ä»¶è¿ç¨åå±ä¸çèåä¾åï¼ç±èªç±è½¯ä»¶åºéä¼ä»¥GPLåè®®åå¸ã
2ãMicrosoftCæ称MSC
MicrosoftCæ¯cè¯è¨çä¸ç§IDEï¼éæå¼åç¯å¢ï¼ï¼å¸¸è§çè¿æMicrosoftVisualC++ï¼BorlandC++ï¼WatcomC++,BorlandC++ï¼BorlandC++Builder,BorlandC++3.1forDOS,WatcomC++.0forDOS,GNUDJGPPC++ï¼LccwinCCompiler3.1,HighC,TurboCçç......
3ãBorlandTurboCæ称TurboC
TurboCæ¯ç¾å½Borlandå ¬å¸ç产åï¼Borlandå ¬å¸æ¯ä¸å®¶ä¸é¨ä»äºè½¯ä»¶å¼åãç å¶çå¤§å ¬å¸ãè¯¥å ¬å¸ç¸ç»§æ¨åºäºä¸å¥Turboç³»å软件,å¦TurboBASIC,TurboPascal,TurboProlog,è¿äºè½¯ä»¶å¾åç¨æ·æ¬¢è¿ã
æ©å±èµæï¼
Cç¼è¯çæ´ä¸ªè¿ç¨å¾å¤æï¼å¤§è´å¯ä»¥å为以ä¸å个é¶æ®µï¼
1ãé¢å¤çé¶æ®µå¨è¯¥é¶æ®µä¸»è¦å®æ对æºä»£ç çé¢å¤çå·¥ä½ï¼ä¸»è¦å æ¬å¯¹å®å®ä¹æ令ï¼å¤´æ件å å«æ令ï¼é¢å®ä¹æ令åç¹æ®å符çå¤çï¼å¦å¯¹å®å®ä¹çæ¿æ¢ä»¥åæ件头ä¸æå å«çæ件ä¸é¢å®ä¹ä»£ç çæ¿æ¢çï¼æ»ä¹è¿æ¥ä¸»è¦å®æä¸äºæ¿æ¢å·¥ä½ï¼è¾åºæ¯åæºæ件å«ä¹ç¸åä½å 容ä¸åçæ件ã
2ãç¼è¯ãä¼åé¶æ®µç¼è¯å°±æ¯å°ç¬¬ä¸é¶æ®µå¤çå¾å°çæ件éè¿è¯æ³è¯æ³åæç转æ¢ä¸ºæ±ç¼è¯è¨ãä¼åå æ¬å¯¹ä¸é´ä»£ç çä¼åï¼å¦å é¤å ¬å ±è¡¨è¾¾å¼ï¼å¾ªç¯ä¼åçï¼å对ç®æ 代ç ççæè¿è¡çä¼åï¼å¦å¦ä½å åå©ç¨æºå¨çå¯åå¨åæ¾æå ³åéçå¼ï¼ä»¥åå°å å访é®æ¬¡æ°ã
3ãæ±ç¼é¶æ®µå°æ±ç¼è¯è¨ç¿»è¯ææºå¨æ令ã
4ãé¾æ¥é¶æ®µé¾æ¥é¶æ®µç主è¦å·¥ä½æ¯å°æå ³çç®æ æ件è¿æ¥èµ·æ¥ï¼å³å°å¨ä¸ä¸ªæ件ä¸å¼ç¨ç符å·å该符å·å¨å¦å¤ä¸ä¸ªæ件ä¸çå®ä¹è¿æ¥èµ·æ¥ï¼ä½¿å¾ææçç®æ æ件æ为ä¸ä¸ªè½å¤è¢«æä½ç³»ç»è£ å ¥æ§è¡çç»ä¸æ´ä½ã
åèèµææ¥æºï¼ç¾åº¦ç¾ç§-gccï¼GNUç¼è¯å¨å¥ä»¶ï¼
åèèµææ¥æºï¼ç¾åº¦ç¾ç§-MicrosoftC
åèèµææ¥æºï¼ç¾åº¦ç¾ç§-TurboC
lcc币合法吗
你上网搜下《互联网传销识别指南(版)》里面有很好的解释~~~~
虚拟货币本身是开源程序,在Github社区维护。其总量限制的参数和方式,均显示在开源代码中。而传销货币的开源是完全抄袭别人的开源代码,且没有使用开源代码来搭建程序,所以其本质跟Q币一样是可受网站控制的。
(4)是否给出源代码链接。一般的去中心化数字货币都会在官网的显要位置给出源代码的链接,这样做是原型工具导出源码为了公开透明地展示货币系统的运作机制。而传销货币重点宣传的是充值购买交易流程,并不提及其运作机制,甚至网站都没有源代码的链接地址。
Lccwin C CompilerçLccwin C Compiler使ç¨ä»ç»
声ææ¬æ没æä»»ä½æç¡®çæè å«èç表达说ææ¬ææ¯å®å ¨æ£ç¡®çï¼å¯¹äºåºç¨æ¬æå 容æ
产ççä»»ä½ç»æï¼æ¬äººæ¦ä¸è´è´£ã
请åè° æ¬æå¨è¯è¨åè¯æ³ççè¿ç¨ä¸çé误ï¼æ¬äººæçå¦æµ ï¼è¿æ¯ä¸å¯é¿å çã
ç®å½
* ç®ä»
* ç¼è¯å¨çå®è£
* Lcc-Winçä¸äºåºæ¬æ¦å¿µ
* å个å°ç¨åºï¼
* 使ç¨å·¥ç¨ç®¡ç
* 第ä¸ä¸ªWindowsç¨åº
* ç¨åºçæå导
* 使ç¨WeditReså建èµæº
* æ·»å å ¶å®ç±»åçèµæº
* 使ç¨éè§æ ¼èµæº
* éæåºåå¨æåº
ç®ä»
å ¶å®æè°çç®ä»è¿ä¸ªé¨åçå 容è¶ååå³äºä½è ãä½æ¯ææ读è¿çä¸äºæåé½æ¯ç±ä¸ä¸ªâç®ä»âå¼å§çï¼è¿é¨åçå 容é常é½æ¯å¨éå¤è¯»è ä¼å¨ä¸é¢çå°çä¸è¥¿ï¼ä½æ¯ä¹æçç®ä»åªæ¯ä½è çä¸äºæ³æ³ãä»ç»çæ³ä¸ä¸ï¼å ¶å®è¿ä¸ªä»ç»å¹¶ä¸æ¯ä¸ä»¶ç®åçäºæ ãé¦å ï¼å¦æä½ è¦æ¯å¼é¨è§å±±çç´å¥ä¸»é¢ï¼è¿æ¯ä¸ç¤¼è²çï¼èä¸åºäºwebçæåä¹ä¸åºè¯¥æè¶ å¤§ä¸ªçç®ä»ï¼ä¸åºè¯¥è®©è¯»è å¨è¿ä¸ªä¸è¥¿ä¸æµªè´¹æ¶é´åéé±ãçæ¥æçåºè¯ä¹å¤å¤çäºï¼è®©æ们åå ¥æ£é¢ãè¿ä¸ªæåæ¯å页çï¼å»ºè®®ä½ çæµè§å¨ä¸è½½å®æ¯åä¿åä¸ä»½æ·è´æ¥ç¦»çº¿é 读ã
ç¼è¯å¨çå®è£
ç¼è¯å¨çå®è£ ç®åæäºï¼åªè¦ææ¨ä¸è½½çæ件è¿è¡ä¸ä¸å°±OKäºï¼åºè¯¥ä¸ä¼éå°ä»ä¹
é®é¢ãä½æ¯æ³¨æå®è£ çæåè¦ç¼è¯åºæ件ï¼å¯è½è¦è±ç¹æ¶é´ï¼è¦è§ä½ çæºå¨é度èå®ã
Lcc-Winçä¸äºåºæ¬æ¦å¿µ
Lcc-Winç¼è¯ç³»ç»æ¯ç±å¤ä¸ªæ件ææçãå®ä»¬çå ±åçä»»å¡æ¯æææ¬æ ¼å¼çæºä»£
ç ç¼è¯ä½å¯ä»¥è¿è¡çäºè¿å¶æ ¼å¼ãä¼è¯ä¸ªéè¦çæ件åå«æ¯ç¼è¯å¨ï¼lcc.exeï¼åè¿æ¥
å¨ï¼lcclnk.exeï¼ã
ç¼è¯å¨æ¯ç¨æ¥æä½ ç¼åçææ¬ç¿»è¯æå¤çå¨å¯ä»¥æ§è¡çæ ¼å¼çç¨åºãè¿æ¥å¨ç¨æ¥è½¬
æ¢ç¼è¯å¨çæçäºè¿å¶æ件ï¼é常å«åç®æ æ件ï¼ï¼å¹¶æ·»å æä½ç³»ç»ç¨æ¥æç¨åºè°å ¥å
å并æ§è¡æéè¦çä¿¡æ¯å®å¯ä»¥æå¤ä¸ªç®æ æ件é¾æ¥ä¸ºä¸ä¸ªåç¬çç¨å¯æ§è¡ç¨åºï¼è¿æ ·å°±
å¯ä»¥ä½¿ä½ å¯ä»¥æä¸ä¸ªç¨åºç代ç ææ¡£åå²ä¸ºå 个模åï¼è¿ä¸ªè½åå¨ä½ å¼å大åç¨åºæ¶æ¯
å¾éè¦çã
è½ç¶è¿äºå¬èµ·æ¥å¥½åååçç®åï¼ä½æ¯å®é ä¸å¹¶ä¸æ¯è¿ä¸ªæ ·åçãç¼è¾å¨åé¾æ¥å¨
éè¦ä½ å¨å½ä»¤è¡æ¹å¼ä¸é®å ¥ä½ è¦å»ºç«çç¨åºçææä¿¡æ¯ï¼è¿å°éè¦ä½ è®°ä½å¤§éçå½ä»¤è¡
åæ°ååç§åæ ·çå¼å ³ï¼è¿æ¶å°±éè¦IDEââéæå¼åç¯å¢ï¼wedit.exeï¼æ¥æä¾æ¹ä¾¿äºã
IDEçåºæ¬åè½æ¯ç¼è¾ææ¬ï¼ä½ å¯ä»¥å¨è¿ä¸ªç¯å¢éç¼è¾ç¨åºçæºä»£ç ï¼ä½æ¯è¿è¿ä¸
æ¢æè¿ä¸ªåè½ãå®è¿ç»ä½ æä¾äºä¸ä¸ªè°ç¨ç¼è¯å¨åé¾æ¥å¨çç®åæ¹æ³ï¼è¿æ ·å¨ç¼è¯ç¨åº
çæ¶åä½ å°±ä¸ç¨å»è®°ä½é£ä¹å¤çå½ä»¤è¡åæ°äºã
ä½ å¯ä»¥ç®åçæWeditæ³è±¡æä½ çæ§å¶å°ï¼å¨è¿éä½ å¯ä»¥æ§å¶ææçæµç¨ã
好å§ï¼ç°å¨ä½ å¯ä»¥ç¨ä½ çé¼ æ ç¹ä¸ä¸Windowsçâå¼å§âæé®ï¼å¨ç¨åºé¡¹çåèåäº
寻æ¾âlcc-winâï¼å¥½äºåï¼ç°å¨ä½ å·²ç»åå¤å¥½å¨Lcc-Winä¸åä½ ç第ä¸ä¸ªç¨åºäºã
å个å°ç¨åºï¼
ä½ ç¥éåï¼èªä»ç¬¬ä¸ä¸ªCç¼è¯å¨äº§ç以æ¥ï¼ä¹è®¸å¯è½æ´æ©ä¸äºï¼ï¼æä¸ä¸ªæ¯ä¾å°±æ¯
为è¿ä¸ªç¼è¯å¨åç第ä¸ä¸ªç¨åºæ¯âHello Worldâï¼æ为ææ¥æçææç¼è¯å¨é½åè¿ï¼
ç°å¨æ们就æ¥åä¸ä¸ªã
第ä¸æ¥æ¯å建æºç æ件ãå¨âFileâèåä¸éæ©ânewâ项ï¼ç¶åå¨åºç°ç对è¯æ¡
ä¸è¾å ¥âhello.câ并ç¹ä¸ä¸âOKâã
ç°å¨ä½ çå°çæ¯ä¸ä¸ªæ é¢ä¸ºâhello.câç空ç½çªå£ï¼è¾å ¥ä¸é¢ç代ç ï¼
#include <stdio.h>
void main (void)
{
printf (Hello World from LCC-Win!\n);
}
ä¿åæ们çå°ç¨åºï¼å¨âFileâèåä¸éæ©âSaveâ项ã
ç°å¨æ们å¯ä»¥ç¼è¯è¿ä¸ªç¨åºäºãéæ©âCompilerâèåä¸çâCompile hello.câ
è°ç¨ç¼è¯å¨ãè¿æ¶ä¸ä¸ªæ°çªå£ä¼åºç°å¨IDEçåºé¨ï¼è¿æ¯ä¿¡æ¯çªå£ï¼å½ç¼è¯å¨å¤çå®æï¼
å¨è¿ä¸ªçªå£ä¸å°ä¼æ¾ç¤ºâHELLO.exe build successfully.âï¼å¦æç¼è¯åºéï¼åºéä¿¡
æ¯ä¹å°ä¼è¢«æ¾ç¤ºå¨è¿éã
å¦æç¼è¯åºéäºï¼å¨ä¿¡æ¯çªå£å¤åå»ä¿¡æ¯æ¾ç¤ºæå¨è¡ï¼å¨ç¼è¾çªå£å å°é«äº®åº¦æ¾ç¤º
åºé代ç è¡ï¼ä»ç»çæ£æ¥ä¸ä¸ä½ åçç¨åºåä¸é¢æåçä¸æ ·ï¼è¿ééè¦æ³¨æçæ¯Cè¯è¨
æ¯å¤§å°åææçç¨åºè¯è¨ï¼è¿æå³çâprintfâåâPrintfâ对ç¼è¯å¨æ¯ä¸ç¸åã
ç°å¨ä½ å·²ç»ç¼è¯å¥½äºè¿ä¸ªç¨åºï¼æ[Ctrl]+[F5]é®è¿è¡ä¸ä¸ï¼ç»æ对åï¼
使ç¨å·¥ç¨ç®¡ç
ç°å¨ä½ å·²ç»ç¼è¯äºä½ ç第ä¸ä¸ªç¨åºï¼ä½ å¯è½æ³ç¥éââæ§è¡æ件å¨åªéï¼
åçæ¯ï¼æä¹ä¸ç¥éï¼è¿å¯è½å¬èµ·æ¥å¾å»ï¼çç¡®ä¹æ¯ï¼ï¼ä½æ¯è¿æ¯çä½ å¨ç¼è¯ç¨åº
æ¶ç缺çç®å½æ¯ä»ä¹ï¼æä»¥ä½ åºè¯¥å¨ä½ ç硬çéæç´¢ä¸ä¸ªå«åâhello.exeâçæ件ã
ä½ è¯å®ä¸ä¼æ³è¦æ¯å¼åä¸ä¸ªç¨åºé½è¦æç´¢ä¸ä¸ç¡¬ççï¼è¿ç§æ åµä¸ä½ å°±è¦ä½¿ç¨å·¥ç¨ã
å·¥ç¨æ¯ä¸äºç¼è¯å¨è¦ç¥æç建ç«ç¨åºæéè¦çä¿¡æ¯ãè¿å æ¬ç¨åºæºæ件ãç¼è¯å¥½ç
æ件çåæ¾å°ç¹ãè¦ç¼è¯ä¸ºä»ä¹ç±»åçå¯æ§è¡æ件ï¼ä¸ä¸ªå¥½çæ³æ³æ¯ä¸ºæ¯ä¸ä¸ªç¨åºå»ºç«
ä¸ä¸ªå·¥ç¨ã
äºå®ä¸ï¼å¯¹äºæ们çâHelloWorldâç¨åºè¿æ¯æä¸ä¸ªå·¥ç¨çï¼Lcc=Winä¼ä¸ºæ²¡æ
ææå·¥ç¨çç¨åºå»ºç«ä¸ä¸ªç¼ºççå·¥ç¨ãéæ©âProjectâèåçâErase...â项ï¼Wedit
ä¼æ¾ç¤ºä¸ä¸ªå·¥ç¨å表ï¼ä½ ä¼çå°ä¸ä¸ªé¡¹ç®å«åâHELLOâï¼ç°å¨æ们毫ä¸çæ çå é¤å®ã
ä¸å ¶ä»çç¼è¯å¨ä¸åçæ¯ï¼Lcc-Winçå·¥ç¨ä¿¡æ¯ä¸æ¯åå¨å¨ç¡¬çä¸çï¼èæ¯åå¨
å¨Windowsç注å表项éãè¿ä½¿å¾Weditå¯ä»¥âè®°ä½âææçå·¥ç¨ï¼çè³äºå¨ä¸åçç£ç
ä¸ãä½æ¯ä¼å¿æ们ä¹éè¦æ¸ é¤æ们ä¸å使ç¨çå·¥ç¨ï¼å¨è¿ç§æ åµä¸ï¼æ们å¯ä»¥æå·¥ç¨ä¿¡
æ¯å¯¼åºå°ç£çä¸ï¼ç¶åå¨IDEä¸å é¤å®ãçä¸ä¸âProjectâèåçé项ï¼ä½ å°±ä¼æç½äºã
ç°å¨ä½ å¯ä»¥è¯çå建ä¸ä¸ªâHELLOâå·¥ç¨ã
第ä¸ä¸ªWindowsç¨åº
ä½ å¯è½å·²ç»æ³¨æå°äºhello.exeçèµ·æ¥è±¡æ¯ä¸ä¸ªDOSç¨åºï¼ä½æ¯å®ä¸æ¯çï¼å®æ¯ä¸ä¸ª
çæ£Windowsç¨åºï¼ä½æ¯è¿ç§ç±»åçç¨åºè¢«ç§°ä¸ºWindowsæ§å¶å°ç¨åº,å°±æ¯å¨ææ¬æ¨¡å¼ä¸
è¿è¡çWindowsç¨åºãå¦æä½ ä¸ç¸ä¿¡ï¼å¯ä»¥è¯çå¨Windowsç纯DOSç¯å¢ä¸è¿è¡ä¸ä¸ï¼ä½
ä¼å¾å°ä¸è¡ä¿¡æ¯ï¼âThis program cannot be run in DOS modeâã
åä¸ä¸ªçæ£çWindowsççâHelloWorldâç¨åºå¹¶ä¸æ¯æ§å¶å°ççæ¬é¾å¤å°ãé¦å
å建ä¸ä¸ªæ°å·¥ç¨ï¼éæ©âWindows executableâ代æ¿âConsole applicationâï¼ç¹OK
åï¼Lcc-Winä¼é®ä½ éè¦Wizardï¼çæå导ï¼å建ç¨åºæ¡æ¶åï¼åçNoã
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
MessageBox (NULL, Hello world from Lcc-Win!, Hello, MB_OK);
return 0;
}
ç¼è¯å¹¶è¿è¡è¿ä¸ªç¨åºï¼ä½ ä¼çå°ä¸ä¸ªæ¾ç¤ºhelloä¿¡æ¯ççªå£ï¼ç¹okå ³ééåºã
ä¸å¹¸çæ¯ï¼é¤äºè¿æ ·çå°ä¹åå°çWindowsç¨åºï¼ä¸è¬æ åµä¸Windowsç¨åºæ¯å¾å¤æ
çï¼ç°å¨ä½ å·²ç»ç¥éäºå¦ä½å建工ç¨åç¼è¯ç¨åºï¼å¦æä½ æ¯ä¸ä¸ªWindowsç¼ç¨æ°æï¼å»
æ¾ä¸äºæå ³ç书æ¥ççï¼åå¾å¿ è¦çåºç¡ï¼ä¸äºWindowsç¼ç¨ç¥è¯å¨ä¸é¢çé¨åæ¯å¿ é¡»
çã
å¦æä½ æ¯ä¸ä¸ªCè¯è¨çæ°æï¼é£ä¹å 好好çå¦ä¸æ®µæ¶é´åæ¥çè¿ä¸ªæåå§ï¼
ç¨åºçæå导
Windowsç¨åºä¸ææ¬ç¶æä¸çç¨åºæ¯èµ·æ¥è¦å¥½çå¤ï¼ä½æ¯å¤©ä¸ä¸ä¼æé¦ é¥¼çï¼ä½ æ³
è¦å¾å°çWindowsåè½æ¯æï¼æ¯å¦ï¼åªè£æ¿ãå¤ä»»å¡ççè¦ä»åºçæ¯å¤§éçå¤æç代ç ã
ä½æ¯æ»è¿æ¯æäºåæ³å¯ä»¥ä½¿äºæ åå¾ç®åä¸äºçãé¿æ¶é´ä»¥æ¥ï¼ç¨åºå们åç°å®é
ä¸æ»æ¯æäºå¨æ¯ä¸ªç¨åºä¸é½ç¸åç代ç 段ï¼æ以Windowsç¨åºåé常使ç¨æ¨¡æ¿æ¥çæè¿
é¨å代ç ãå°±æ¯è¯´æºæ件ä¸è¬åªè¦çæä¸æ¬¡ï¼å°±å¯ä»¥å¨ä»»ä½ä¸ä¸ªæ°ç¨åºä¸ä½¿ç¨äºãåªæ
ååçé¨åææ¯æ¯ä¸ªç¨åºä¸åçé¨åï¼æ¾ç¶è¿äºåºè¯¥æ¯å¯ä»¥èªå¨çè¿è¡çã
è¿å°±æ¯çæå导è¦å®æçå·¥ä½ãä½ å¯ä»¥å¨å®ç帮å©ä¸å¿«éççæåºç¨ç¨åºçæ¡æ¶ã
è¿ä¸ªæ¡æ¶äºå®ä¸å°±æ¯ä¸ä¸ªä»ä¹åè½ä¹æ²¡æçä¸ä¸ªå®æ´çç¨åºï¼ä¹è®¸å¯è½åªæ¯ç¨æ¥æ¾ç¤ºä¸
个空çªä½ï¼å 为使ç¨åºå®æå ·ä½çåè½æ¯ä½ çå·¥ä½ã
让æ们çä¸ä¸ä½¿ç¨å导建ç«æç®åçåºç¨ç¨åºçå¤çã
é常ï¼ç¬¬ä¸æ¥æ¯å建ç¨åºä»£ç ï¼ç¶å建ç«ä¸ä¸ªå·¥ç¨ãå¨ä½¿ç¨å导ç模å¼ä¸ï¼ä½ 并ä¸
éè¦åä¸è¡ä»£ç ï¼å导å°ä¸ºä½ 建ç«å®ï¼æ们ç´æ¥æ¥ç建ç«å·¥ç¨å个æ¥éª¤ã
å¨âProjectâèåä¸éæ©âcreateâ项ï¼ç»åºé¡¹ç®å称åè·¯å¾ï¼éæ©å·¥ç¨ç±»å为
âWindows executableâï¼å½Wedit询é®ä½ æ¯å¦è¦ä½¿ç¨å导ï¼wizardï¼ï¼åçâyesâï¼
è¿æ ·å°±è¿å ¥äºå导模å¼ã
å导å°æ¾ç¤ºä¸ä¸ªå¯¹è¯æ¡å«åï¼âApplication characteristicsâï¼è¿æ¯å导å°å¨
åºç¨ç¨åºä¸å å«çåºæ¬ç¹ç¹ï¼ä½ å¯ä»¥éæ©ä»¥ä¸æ åµçä¸ç§ï¼åçªå£ãå¤çªå£åDLLï¼å¨
æé¾æ¥åºï¼ï¼ç°å¨æ们è¦å建ä¸ä¸ªååç®åçåçªå£å°åºç¨ç¨åºï¼éæ©åçªå£ç±»å并确
ä¿ææçç¹æ§å¤éæ纽é½æªè¢«éä¸ï¼ç¹å»âOKâè¿è¡å¤çã
ç°å¨å导å°è¦æç¤ºä½ è¾å ¥ä¿¡æ¯è®¾ç½®ä¸»çªå£çâç±»âï¼è¿éæ说çâç±»âåC++ä¸ç
ç±»æ¯ä¸åçï¼å®æ¯Windowså¨å åä¸åå¨çä¸ä¸ªç»æï¼ç¨æ¥åå¨æ£ç¡®æ¾ç¤ºçªå£æéè¦ç
ä¿¡æ¯ãæéè¦çæ¯âåå«å½æ°âï¼ä¸é¢å°å ·ä½ä»ç»ï¼çå称ï¼ç°å¨åªè¦ç®åæ¥åé»è®¤ç
å±æ§å¼ï¼ç¹å»âNEXTâè¿è¡å¤çã
è¿ä¸ªâGenerate code for the main window creationâ对è¯æ¡ç¨æ¥è®¾å®ç¸åºçªå£
çä¿¡æ¯ãå½ä¸»çªä½è¢«å建çæ¶åè¿äºä¿¡æ¯ä¼è¢«ä¼ éå°ç¸åºççªå£ãå¨è¿éä½ å¯ä»¥æ¹åçª
å£çæ é¢æ çæ¾ç¤ºå 容ï¼ç¶åç¹å»âFinishâã
å导çå·¥ä½å°±è¦å®æäºï¼æ¥ä¸æ¥çå·¥ç¨å建工ä½æ¯é常çä¸äºå¯¹ç¼è¯å¨ãé¾æ¥å¨ã
è°è¯å¨çä¸äºè®¾ç½®ï¼è¿éåªè¦ç®åçæ¥å缺ççé项就å¯ä»¥äºã
ç»è¿ä¸é¢çæ¥éª¤ï¼å°±å®æäºå导çææçå·¥ä½ï¼ä½ å¯ä»¥å¨IDEä¸çå°ä¸¤ä¸ªçªå£ï¼ä¸
个æ¯æºç¨åºç¼è¾çªï¼å¦å¤çä¸ä¸ªæ¯ç¨æ¥å®ä¹åºç¨ç¨åºç主èåçèæ¬ã
æ£è±¡ååæ说çé£æ ·ï¼è¿ä¸ªç¨åºæ¡æ¶æ¯å ¨åè½çï¼å¯ä»¥éè¿ç¼è¯å¹¶è¿è¡ï¼ä½ å¯ä»¥ç
å°ä¸ä¸ªæèåççªå£ãå¯ä¸å¯ä»¥è¿è¡çæä½æ¯âFileâèåçâExitâ项ï¼ä½ å¯ä»¥ä½¿ç¨
è¿ä¸ªèåé¡¹å ³éè¿ä¸ªç®åççªå£ï¼ä¹å¯ä»¥ä½¿ç¨[Ctrl]+[Q]å®æåæ ·çæä½ã
ç°å¨ä½ å¯ä»¥çä¸ä¸è¿ä¸ªç¨åºçæºä»£ç ï¼ä½ ä¼æ³¨æå°è¿ä¸ªç¨åºæ¯é£ä¸ªâHello World!â
ç¨åºå¤æäºè®¸å¤ï¼æå¯ä»¥åè¯ä½ ä¸ä¸ªå°çªé¨ââä»æºä»£ç çç»å°¾å¼å§è¯»èµ·ï¼å 为é常é£
éææ¯ä¸äºåè½å½æ°çæå¨ã
使ç¨WeditReså建èµæº
å¨Windowsç¨åºçå¼åä¸ï¼èµæºæ¯ååéè¦çé¨åï¼èåã对è¯æ¡åå ¶å®çä¸äºç¨
æ·æ¥å£é¨åé½æ¯å¯ä»¥è±¡åç¨åºä¸æ ·çç¼åçï¼å¯ä»¥ç®åçä½ä¸ºèµæºå å«è¿ç¨åºä¸ã
å¦æLcc-Win没ææä¾ä¸ä¸ªèµæºç¼è¾å¨é£ä¹Lcc-Winå°ä¸æ¯ä¸ä¸ªå®æ´çWinç¼
è¯ç¨åºï¼Lcc-Winæä¾çèµæºç¼è¾å¨å«åWeditResï¼æ¯å¨âlcc\bin\âè·¯å¾ä¸ã
çç¡®ï¼WeditResè¿æ¯å¨ä¸æçå®åçè¿ç¨ä¸ï¼ä¹å°±æ¯è¯´è¿æ²¡æå¼åå®æãä¸è¿å®å·²
ç»å¯ä»¥ç¼è¾ä¸äºæå·¥ç¼è¾é¾ä»¥å®æçèµæºäºï¼æ¯å¦ï¼èåå对è¯æ¡ççãå¨IDEä¸è°ç¨
WeditResï¼å¨âCompilerâèåä¸éæ©âResourcesâ项ã
å¦æä½ æ£å¨å¼åçç¨åºæ¯ç¨å导çæçï¼é£ä¹å导ä¼äº§çä¸ä¸ªèµæºæ件ï¼å¨è¿ä¸ªæ
件éè³å°å æ¬èåèµæºï¼WeditResä¼æå¼è¿ä¸ªèµæºæ件ï¼ä½æ¯å®ä¸ä¼æ¾å°ç¸åºç头æ件ï¼
ä½ åºè¯¥ä¸ºå®ææ头æ件çè·¯å¾ãé常æ¯å¨WeditReså½åå·¥ä½è·¯å¾çä¸ä¸çº§ç®å½ã
WeditResè¦æ¾çæ件é常å«åprjnamewiz.hï¼è¿éçprjnameæ¯ä½ æå®
çå·¥ç¨çå称ãç»è¿è¿ä¸æ¥å°±å¯ä»¥ä¿®æ¹å·¥ç¨æç¨çèµæºäºã
å¦æä½ çç¨åºä¸æ¯ç±å导çæçï¼é£ä¹WeditResä¼æç¤ºä½ è¾å ¥èµæºæ件çæ件åï¼è¾
å ¥ä¸ä¸ªå称åç¹å»âOKâï¼è¿æ¶WeditResä¼è¯´ä¸è½æå¼è¿ä¸ªèµæºæ件ï¼æ²¡æå ³ç³»ï¼è¿æ¯
å 为è¿ä¸ªç®å½ä¸çç¡®æ¯æ²¡æèµæºæ件çï¼è¿æ¯å¨è¿ä¸ªå¯¹è¯æ¡ä¸ç¹å»âOKâï¼ç¶åå¨
âFileâèåä¸éæ©âNewâ项ï¼è¿æ ·å°±ä¼ä¸ºä½ çå·¥ç¨å建ä¸ä¸ªæ°çèµæºå·¥ç¨ï¼é®å ¥ä¸
个工ç¨åï¼ä¸è¬æ åµæ¯ååºç¨ç¨åºçå·¥ç¨åç¸åï¼ç¶åç¹å»âValidateâï¼ç°å¨ä½ éè¦
æå·¥å¨åºç¨ç¨åºå·¥ç¨å表éæ·»å è¿ä¸ªèµæºæ件ï¼ä¸è¬ä»¥âRESâ为æ©å±åï¼ã
å¨è¿éè¯ä¸¾ä¸ä¾ââæ们æ¥ä¸ºæ们ä¸é¢å建çç¨åºå建ä¸ä¸ªâå ³äºâ对è¯æ¡èµæºã
è¿è¡WeditResï¼è¾å ¥å¤´æ件çè·¯å¾åéæ©âObjectsâèåçâNew dialogâ项ï¼
è¿æ¶WeditResä¼æ¾ç¤ºä¸ä¸ªå¯¹è¯æ¡ï¼æ é¢æ 为âDialog box parametersâï¼æ¹å对è¯æ¡
çæ é¢ä¸ºâAbout this applicationâæè éä¾¿å ¶å®çä»ä¹ä¸è¥¿ï¼ç¶åå¨âIdentityâ
ï¼æ è¯ç¬¦ï¼é¡¹é®å ¥ä¸ä¸ªä½ å欢çä¸è¥¿ï¼æ¯å¦ï¼âDLG_ABOUTâï¼å¨âstandard buttonsâ
éåä¸éæ©âValidateâé项并ç¹å»âOKâå ³é对è¯æ¡ã
ä½ å¨è¿ä¸ªæ¶ååºè¯¥å¯ä»¥çå°ä¸ä¸ªæ°ç对è¯æ¡åä¸ä¸ªæµ®å¨çå·¥å ·æ¡ï¼å¨å¯¹è¯æ¡ä¸ä¹åº
该æä¸ä¸ªæ纽ï¼ä½ å¯ä»¥ç¨é¼ æ æå¨å®æ¥éæ°æå®å®çä½ç½®ï¼å¦æä½ è¿æ³æ¹åæ纽ä¸æ¾ç¤º
çæåââåå»å®æå¼å±æ§å¯¹è¯æ¡ï¼æè å éå®å®ï¼ç¶åå¨æµ®å¨å·¥å ·æ¡ä¸æ¹åæ¾ç¤ºæåã
ä¸é¢æ们添å ä¸ä¸ªéæææ¬æ ç¾ï¼å¨å·¥å ·æ¡ä¸éæ©ææ¬å·¥å ·ï¼å æ å½¢ç¶åæç±ä¸ä¸ª
ç©å½¢å å´çæéï¼å¨å¯¹è¯æ¡ççªä½ä¸ç¹å»ä¸ä¸ï¼ä¸ä¸ªå å«ææ¬âââTextâââçç©å½¢
ä¼åºç°å¨ä½ ç¹å»çå°æ¹ï¼å¯ä»¥éè¿é¼ æ æå¨æ¥æ¹åè¿ä¸ªææ¬æ¡ç大å°ï¼åæ ·ä¹å¯ä»¥æ¹å
æ¾ç¤ºçææ¬åææ¬æ¡çä½ç½®ã
æ们è¿å¯ä»¥å¨è¿ä¸ªå¯¹è¯æ¡ä¸æ·»å å ¶å®çè£ ç½®ã空å¿æ¹æ¡ãå®å¿æ¹æ¡åç»ä»¶ççå¯ä»¥
对è¿ä¸ªå¯¹è¯æ¡è¿è¡ä¸äºç®åçè£ é¥°ãå¦æä½ æ³è¦å é¤ä¸ä¸ªè£ ç½®ï¼éå®å®ç¶åæ
[Ctrl] + [X]ï¼æè éæ©âEditâèåçâCutâ项ãè¿å¯ä»¥éæ©âOptionsâèåç
âTestâ项æµè¯è¿ä¸ªå¯¹è¯æ¡çå¤è§ãå¨å·¥å ·æ éæä¸ä¸ªæ纽çåè½æ¯ç¸åçï¼å°±æ¯çèµ·
æ¥è±¡ä¸ä¸ªå¼å ³çé£ä¸ªï¼å¦ææ³è¦ç»§ç»ç¼è¾è¿ä¸ªå¯¹è¯æ¡ï¼åªè¦å次éæ©ä¸è¿°é项ä¸æ¬¡å³å¯ã
ç¼è¾å®æåå¨âFileâèåä¸éæ©åçï¼ç¶åå ³éWeditResï¼ä¸ºäºæ¾ç¤ºè¿ä¸ªå¯¹è¯æ¡
ä¸é¢æä»¬å¿ é¡»å¨ç¨åºä¸å å«ç¸åºç代ç ã
寻æ¾âOnCommandâè¯å¥ï¼å¨é£éè¯å®æä¸ä¸ªswitchè¯å¥çæ¡ä»¶ä¹ä¸æ¯èåå½ä»¤
âExitâçï¼IDM_EXITï¼,ç°å¨æ们为æ们çæ°å¯¹è¯æ¡æ·»å ä¸ä¸ªæ°çcaseæ¡ä»¶ï¼è¾å ¥å¦
ä¸ä»£ç ï¼
case IDM_ABOUT:
DialogBox (hInst, MAKEINTRESOURCE(DGL_ABOUT), hwnd, AboutDlgProc);
break;
æ们è¿éè¦ç¼å对è¯æ¡å½æ°ã
BOOL CALLBACK AboutDlgProc (HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
switch (msg)
{
case WM_COMMAND:
if (LOWORD(wParam) == IDOK)
{
EndDialog(hwnd,0);
return TRUE;
}
break;
}
return FALSE;
}
ä½ åºè¯¥å·²ç»æç½äºï¼ç±å导æ¥çæ代ç è¦ç®åå¾å¤ï¼ç°å¨ç¼è¯ãé¾æ¥è¿ä¸ªç¨åºï¼ç¶
åè¿è¡å®ï¼éæ©âCompilerâä¸çâExecute prj.exeâ项ï¼æ们å建ç对è¯æ¡å°æ¾ç¤º
å¨å±å¹ä¸äºã
æ·»å å ¶å®ç±»åçèµæº
ä½ è¿éè¦ç¥éå¦ä½æ·»å å ¶å®èµæºï¼å¦å¾æ çã
äºå®ä¸WeditResè¿ä¸è½ç¼è¾å¾æ æ件ï¼ä½è 说æ£å¨åè¿æ¹é¢çå·¥ä½ãæä»¥ä½ å¯è½è¦
使ç¨å ¶å®çå·¥å ·æ¥å®æå¾æ ç¼è¾çå·¥ä½ã
å¨èµæºå建å®åï¼ä½ è¦æå®æ·»å å°å·¥ç¨çèµæºæè¿°æ件éé¢å»ãå¦æä½ æ¯ä½¿ç¨å导
å建çå·¥ç¨ãä½ åªé¡»è¦æå¼ä¸å·¥ç¨åç¸åç*.RCæ件就å¯ä»¥äºã
å¦æä½ æ²¡æ使ç¨å导ï¼é£ä¹ä½ åªè½æ°å建ä¸ä¸ªRCæ件ãå¦æä½ æ¯ä½¿ç¨WeditReså建
çèµæºï¼å¨å»ºç«èµæºæè¿°æ件æ¶æäºäºæ æ¯ä½ å¿ é¡»ç¥éçââå¿ é¡»å å«WeditResèµæºï¼
çè³äºä½ 并没æ使ç¨ä»»ä½ç±WeditReså建çèµæºï¼ä½ å®å ¨æå¯è½å¨åç»çå·¥ä½ä¸ç¨å°ï¼
æ建议æ 论ä»ä¹æ åµé½åºè¯¥è±¡ä¸é¢è¿æ ·åã
WeditResä¸è¬è¦å»ºç«ä¸ä¸ªæ件ï¼ä¸ä¸ª*.DLGæ件ãä¸ä¸ª*.H头æ件åä¸ä¸ª*.RESäºè¿
å¶èµæºæ件ãDLGæ件æè¿°äºç±WeditReså建çèµæºçå®ä¹ï¼å¦ï¼èµæºä¸²ãèåå对è¯
æ¡çï¼ï¼Hæ件æ¯ææèµæºç符å·åçå®ä¹ï¼RESæ件æ¯ç¼è¯åçäºè¿å¶èµæºæ件ï¼è¿ä¸ª
æ件å°è¢«é¾æ¥å°å·¥ç¨æåçæçå¯æ§è¡ç¨åºä¸ã
èµæºæè¿°æ件ï¼*.RCï¼çæ件åä¸å®è¦åRESæ件çæ件åç¸åï¼å½Lcc-Winçèµ
æºç¼è¯å¨ï¼lrc.exeï¼ç¼è¯èµæºæ¶å°è¦çåæ¥çRESæ件ãä½ å¯ä»¥å¨Weditä¸å建èµæºæ
è¿°æ件ï¼å¦ä¸ï¼
#include <windows.h>
#include resources.h
#include resources.dlg
æ¯ã
第äºè¡å å«ç±WeditRes产ççèµæºç符å·åç头æ件ï¼æå¨è¿éåå®ä½ çèµæºå·¥ç¨
å为âresurcesâï¼å¯ä»¥æ¹ä¸ºä½ æå®ä¹çå称ã第ä¸è¡æ¯WeditRes产ççèµæºæè¿°æ件ï¼
è¿æ ·ä¸ä¼ä¸¢å¤±ä½ å·²ç»å建äºçèµæºã
ä¸é¢ä½ å¯ä»¥åèµæºæè¿°æ件ä¸å¢å èµæºï¼ä¸é¢æ¯ä¸ä¸ªä¾åï¼
IDI_MYICON ICON myiconfile.ico
è¿ä¸è¡å®ä¹äºå¾æ èµæºï¼å¨ä½¿ç¨åï¼ä¸å®è¦å®ä¹å¾æ ç符å·åãæ¯å¦å¨âprjwiz.hâ
æ件ï¼æè âresource.hâï¼å¦æä½ æ²¡æ使ç¨å导ï¼ä¸ï¼å¦æä½ æ²¡æå®ä¹è¿ä¸ªç¬¦å·åï¼
é£ä¹ç¼è¯å¨å°è®¤ä¸ºå®æ¯ä¸ä¸ªå符串åã
æ·»å å æ æè ä½å¾èµæºçæ¥éª¤æ¯ç¸åçï¼åªè¦æå ³é®åæ¹ä¸ºâBITMAPâæè
âCURSORâã
ä¸é¢è¦åçæ¯æèµæºæè¿°æ件å å«å¨å·¥ç¨æ件å表ä¸ï¼å½ä¸ä¸æ¬¡ä½ ç¼è¯å·¥ç¨ï¼èµæº
ç¼è¯å¨ä¹å°ç¼è¯è¿ä¸ªèµæºæè¿°æ件ï¼å¹¶æ产ççäºè¿å¶èµæºé¾æ¥å°æ§è¡æ件å ã
è¿æ ·ä½ å¯ä»¥æ·»å å¾æ ãå æ åä½å¾èµæºï¼å¯¹äºå ¶å®ç±»åçèµæºå¯ä»¥ä½¿ç¨RCDATAèµæº
æ¹å¼æ·»å å°èµæºæ件å ï¼å°±æ¯ä¸ç³»åçç±éå·åéçæ°å¼ä¿¡æ¯ï¼è¿ç§æ¹å¼å¯ä»¥ä½¿Lcc-Win
çèµæºç¼è¯å¨ä¸æ¯æçèµæºå¾ä»¥æ·»å å°èµæºæ件ä¸å»ï¼æ¯å¦WAVæ件çã
使ç¨éè§æ ¼èµæº
Lcc-winçèµæºç¼è¯å¨å¯ä»¥ä½¿ç¨åç§ç±»åçèµæºï¼å¦å¯¹è¯æ¡ãèåãå¾æ çï¼ä½
æ¯å®ä¸è½ä½¿ç¨å ¶å®éè§æ ¼çèµæºå¦å¤åªä½æ件ï¼WAVï¼MIDççï¼ã
ä½ å¯è½è®¤ä¸ºä½¿ç¨å ¶å®çèµæºç¼è¯å¨å¦å¾®è½¯å¨Win SDKä¸æä¾çèµæºç¼è¯å¨ï¼æè
å ¶å®çä»ä¹ä¸è¥¿ã
ä½æ¯è¿éç麻ç¦äºæ¯LCCLINKï¼å 为å®å¹¶ä¸è®¤è¯è¿äºèµæºï¼å æ¤ä¹ä¸å¯è½æè¿äºèµ
æºé¾æ¥å°ä½ çæ§è¡æ件ä¸å»ï¼è¿åçæ¯ä¸ªå¤§é®é¢ï¼ä½ å¯è½ä¸å¾ä¸ä½¿ç¨å ¶å®çé¾æ¥å¨ï¼è¿
æå³çå¯è½éè¦å ¶å®ç±»æ§çå ¥å£åºã
æ认为è¿æ ·åä¸æ¯ä¸ä¸ªå¥½ç解å³æ¹æ¡ï¼ä¸»è¦çåå æ¯Weditä¸æ¯è®¾è®¡æå¯ä»¥ä½¿ç¨å ¶
å®çé¾æ¥å¨çï¼ä½ å°ä¸å¾ä¸å¨å½ä»¤è¡ä¸ç¼è¯ä½ çç¨åºï¼æ¾å¼äºLcc-Win IDEæä¾çå ¨
é¨ä¼ç¹ã
ä½æ¯è¿éè¿æ¯æä¸ä¸ªå¯ä¾éæ©çæ¹æ¡ï¼ââ幸è¿çæ¯LRCæ¯æRCDATAèµæºç±»åï¼è¿
ç§èµæºç±»åç¨æ¥å å«äºè¿å¶æ°æ®ç±»åçèµæºï¼ä½¿ç¨ä¸ç³»åçæ°åå表表示ã
ä¸é¢æ¯å ·ä½çå®ç°æ¹æ³ï¼
é¦å ä½ éè¦è½¬æ¢ä½ è¦ä½¿ç¨çäºè¿å¶æ件å°æä¸ç³»åçæéå·åå²æ°å¼è¡¨ç¤ºçææ¬æ
件ï¼LRC缺çç认为è¿äºæ°æ®æ¯ä½é¿çï¼å®åæ¶ä¹æ¯æä½é¿åº¦çæ´æ°ï¼åªè¦å¨æ°å¼
åæ·»å âLâå符就å¯ä»¥äºã
ä½ å¯ä»¥ä»è¿éä¸æ ½åè¿äºå·¥ä½ç转æ¢å¨ï¼
* Bin2Txt: å¼åè ï¼Josef Planeta. ååççµæ´»æ¹ä¾¿ï¼
* TextIt: æ¬æä½è å¼åï¼å¯ä»¥ä¸æ¬¡è½¬æ¢å¤ä¸ªæ件ã
è¿ä¸¤ä¸ªå·¥å ·é½å¸¦ææºç ï¼ä½¿ç¨Lcc-Winå¼åã
ç¶åä¸å®è¦å¨èµæºæ°æ®ä¸å å«è¿äºæ´æ°å表ï¼å¦æä½ çèµæºæ件没æ使ç¨èµæºæè¿°
æ件ï¼å¦æä½ æ²¡æ使ç¨å导çæå·¥ç¨ï¼è¿æ¯æå¾å¤§å¯è½çãä½ ä¸å®è¦å»ºç«ä¸ä¸ªèµæºæè¿°
æ件ï¼ä¸è¬æ¯è¿ä¸ªæ ·åçï¼
#include <windows.h> //basic Windows header file
#include resources.h //resource identifiers (generated by WeditRes)
#include resources.dlg //resource scripts (generated by WeditRes)
MySound RCDATA
BEGIN
#include mysound.txt
END
å¨è¿ä¸ªä¾åä¸ï¼æ们å å«äºä¸ä¸ªå«åâmysound.txtâçæ件ï¼è¿ä¸ªæ件æ¯ç±ä¸ä¸ª
WAVæ件转æ¢æçæ°æ®æ件ã
è¦æ³¨æå½åçæ¬çLRCï¼Vï¼å¨RCDATAèµæºç大å°ä¸æ¯æéå¶çï¼å¦æä»»ä½ä¸
个æ°æ®æ件大äºKbï¼ä½ æå¯è½å¾å°ä¸ä¸ªæº¢åºä¿¡æ¯ï¼Overflow in resource dataï¼ï¼
å¨æªæ¥ççæ¬ä¸å¯è½ä¼æææ¹è¿ï¼ä½æ¯å¨ç®åå¦æåºç°äºè¿ç§æ åµå¯è½åªæ使ç¨å ¶å®ç
èµæºç¼è¯å¨äºã
使ç¨RCDATAç±»åå®ä¹èµæºæå³çä½ ä¸è½ç´æ¥çæå®PlaySoundæ¥ææ¾è¿äºèµæºï¼å
为类åæ¯ä¸åçã
解å³åæ³æ¯æå·¥æè¿äºæ°æ®è¯»å ¥å åï¼ä¸é¢ç代ç 说æäºå¨PlaySoundæ¶è¦åçäºæ ï¼
BOOL PlayRcSound (HINSTANCE hInst, LPCTSTR lpszSndName)
{
HRSRC hr;
HGLOBAL hg;
LPVOID lpSndData;
hr = FindResource (hInst, lpszSndName, RT_RCDATA);
if (hr != NULL)
{
hg = LoadResource (hInst, hr);
if (hg != NULL)
{
lpSndData = LockResource (hg);
if (lpSndData != NULL)
{
return PlaySound((LPCTSTR)lpSndData, NULL, SND_MEMORY);
/* We do not need to unlock or unload the resource, */
/* Windows will take care of this */
}
}
}
return FALSE;
}
å¦æä½ çèµæºå¨å¤´æ件ä¸å®ä¹ææ è¯ç¬¦ï¼å«åï¼ID_MYSOUNDï¼é£ä¹è°ç¨å½æ°çæ¹å¼
åºè¯¥æ¯ï¼
PlayRcSound (hInst, MAKEINTRESOURCE(ID_MYSOUND));
å¦å¤ï¼å¦æä½ ç»åºäºä¸ä¸ªå符串åï¼æ¯å¦ï¼MySoundï¼å½æ°è°ç¨å¦ä¸æ示ï¼
PlayRcSound (hInst, MySound);
éæåºåå¨æåº
ä¹è®¸ç¨åºåå°±æ¯å欢æ¯å»ä»¥ç±»çä¿®è¾çï¼åºçæ¦å¿µå°±æ¯ä¸ä¸ªä¾åï¼å®æ¯ç¨æ¥åå¨å¯
è½å¨è®¸å¤çç¨åºä¸ä½¿ç¨ç代ç ï¼æè ä¸é¨åååä¸ä¸ç代ç ï¼åªè¦åä¸æ¬¡å°±å¯ä»¥äºï¼ç
è³æ¯ç±å ¶ä»çäººä¸ºä½ åç代ç ï¼è¿æ ·ä½¿ç¨è¿äºä»£ç èå®å ¨ä¸ç¨å ³å¿å ·ä½çå®ç°ç»èã
åå ¶å®çWindowsç¼è¯å¨ä¸æ ·ï¼LCC-Winä¹æ¯æ两ç§åºââå¨æåºåéæåºã
éæåºå å«ç代ç å¨ç¼è¯é¾æ¥æ¶å°è¢«æ·»å å¨å¯æ§è¡æ件ä¸ï¼å®è¢«ç§°ä¸ºâéæâåºæ¯
å 为ä¸æ¦å®é¾æ¥å°å¯æ§è¡æ件ä¸ï¼å°±å°ä¸å¯æ¹åï¼é¤ééæ°ç¼è¯æ´ä¸ªç¨åºï¼ã
èå¨æé¾æ¥åºä¸ä¼ç±ç¼è¯å¨é¾æ¥å°å¯æ§è¡æ件ä¸ï¼èæ¯å¨è¿è¡æ¶ç±æä½ç³»ç»é¾æ¥çï¼
è¿æ ·å³ä½¿ä½ æ¹åäºè¿ä¸ªåºï¼ä¹ä¸ä¼ä½¿æ´ä¸ªå¯æ§è¡ç¨åºéæ°ç¼è¯ã
éæåºçç¼åè¦ç®åäºï¼åªè¦å建ä¸ä¸ªç±»å为âStatic library (lib)âçæ°å·¥ç¨ï¼
æ·»å ä½ è¦å¨è¿ä¸ªéæåºä¸ä½¿ç¨çåå§èµæââå½æ°ãæ°æ®ççï¼ç¼è¯åå°±ä¼å¾å°ä¸ä¸ª
LIBæ件ï¼è¿ä¸ªæ件éé¢å æ¬äºææä½ æå®çå½æ°åæ°æ®ãå¦æä½ è¦ä½¿ç¨è¿äºå½æ°æè
æ°æ®ï¼å¨âConfigurationâ对è¯æ¡ä¸çâLinkerâ表éçâAdditional librariesâ
项ä¸æå®éæåºå称ï¼éç¥ç¼è¯å¨æè¿ä¸ªéæåºé¾æ¥å°å·¥ç¨éå»ï¼ä½æ¯åä¸ä¸è¦å¿äºæ
ä½ çéæåºæ¾å°é¾æ¥å¨è½å¤æ¾å°çå°æ¹ï¼æ¯å¦ï¼â\lcc\libâè·¯å¾ä¸ã
å¨æé¾æ¥åºå°±æäºéº»ç¦äºï¼ä½ è¦ä½¿ç¨ä¸¤ä¸ªæ件èä¸æ¯ä¸ä¸ªæ件ï¼å¨æåºæ¬èº«ââDLL
æ件åå ³èå ¥å£åºââLIBæ件ãå ¥å£åºæ¯ç»é¾æ¥å¨ä½¿ç¨çï¼ç®åç说å®ä½¿ç¨æ¥åéª
é¾æ¥å¨çï¼åæ¶å®ä¹å å«äºä½¿Windowsæ£ç¡®çè°ç¨ç¸åºå¨æåºä¸çå½æ°çä¿¡æ¯ã
èä¸ï¼å¨æåºçåè½å¯ä»¥æ´å ç强大ï¼å®æä¸ä¸ªLibMain()å½æ°ï¼å¨ç¨åºæ¯ä¸æ¬¡
è°ç¨å®æ¶é½è¦éè¿å®æ¥è¿è¡åå§åçå·¥ä½ã
è¦å建ä¸ä¸ªå¨æé¾æ¥åºï¼ä½ è¦å建ä¸ä¸ªDLLå·¥ç¨ï¼ç¶åä½ å¯ä»¥ä½¿ç¨å导çæLibMain()
å½æ°ãæ·»å ä½ è¦ä½¿ç¨çå½æ°åæ°æ®ï¼å¨ç¼è¯è¿ä¸ªå·¥ç¨åï¼ä½ å°±å¯ä»¥å¾å°DLLåºåæ¥å£åº
æ件ã
å¦æè¦ä½¿ç¨å¨æé¾æ¥åºï¼è±¡ä½¿ç¨éæåºä¸æ ·ï¼è¦å°æ¥å£åºæ¾å¨â\lcc\libâè·¯å¾ä¸ï¼
å¨âOptionsâ对è¯æ¡ä¸æ·»å è¿ä¸ªæ¥å£åºãåæ¶ä¹è¦æDLLæ件æ¾ç½®å¨Windowsè½å¤æç´¢
å°çè·¯å¾ä¸ï¼Windowsæç´¢å¨æé¾æ¥åºç缺çç®å½æ¯â\windows\system\âååºç¨ç¨åº
çèµ·å§ç®å½ï¼å°å¨æé¾æ¥åºæ¾ç½®å¨è¿ä¸¤ä¸ªç®å½ä¸é½æ¯å¯ä»¥ç
编译器有哪些软件编译器有哪些
关于编译器有哪些软件,编译器有哪些这个很多人还不知道,今天来为大家解答以上的问题,现在让我们一起来看看吧!
1、目前最流行的C语言编译器有以下几种:GNU Compiler Collection 或称 GCCGCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器。
2、它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分。
3、GCC原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,GCC同样适用于微软的Windows。
4、GCC是自由软件过程发展中的著名例子,由自由软件基金会以GPL协议发布。
5、2、Microsoft C 或称 MS CMicrosoft C 是c语言的一种IDE(集成开发环境),常见的还有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++ ,Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ .0 for DOS,GNU DJGPP C++ ,Lccwin C Compiler 3.1,High C,Turbo C等等......3、Borland Turbo C 或称 Turbo CTurbo C是美国Borland公司的产品,Borland公司是一家专门从事软件开发、研制的大公司。
6、该公司相继推出了一套 Turbo系列软件, 如Turbo BASIC, Turbo Pascal, Turbo Prolog, 这些软件很受用户欢迎。
7、
扩展资料:
C编译的整个过程很复杂,大致可以分为以下四个阶段:预处理阶段在该阶段主要完成对源代码的预处理工作,主要包括对宏定义指令,头文件包含指令,预定义指令和特殊字符的处理,如对宏定义的替换以及文件头中所包含的文件中预定义代码的替换等,总之这步主要完成一些替换工作,输出是同源文件含义相同但内容不同的文件。8、2、编译、优化阶段编译就是将第一阶段处理得到的文件通过词法语法分析等转换为汇编语言。
9、优化包括对中间代码的优化,如删除公共表达式,循环优化等;和对目标代码的生成进行的优化,如如何充分利用机器的寄存器存放有关变量的值,以减少内存访问次数。
、3、汇编阶段将汇编语言翻译成机器指令。
、4、链接阶段链接阶段的主要工作是将有关的目标文件连接起来,即将在一个文件中引用的符号同该符号在另外一个文件中的定义连接起来,使得所有的目标文件成为一个能够被操作系统装入执行的统一整体。
、 百度百科-gcc (GNU编译器套件)百度百科-Microsoft C百度百科-Turbo C。