锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲欧洲一二三,久久久久综合,久久激情视频久久 http://m.shnenglu.com/cc/鍗婁憨鏂瑰 澶╁厜浜戝獎 zh-cn Sun, 16 Nov 2025 03:41:16 GMT Sun, 16 Nov 2025 03:41:16 GMT 60 鍦╳indows鐜涓厤緗甮o璇█寮鍙戠幆澧?/title> http://m.shnenglu.com/cc/archive/2013/02/07/197762.html鍖楅涔嬬007 鍖楅涔嬬007 Thu, 07 Feb 2013 02:13:00 GMT http://m.shnenglu.com/cc/archive/2013/02/07/197762.html http://m.shnenglu.com/cc/comments/197762.html http://m.shnenglu.com/cc/archive/2013/02/07/197762.html#Feedback 1 http://m.shnenglu.com/cc/comments/commentRss/197762.html http://m.shnenglu.com/cc/services/trackbacks/197762.html 鍙傝?/span>http://www.cnblogs.com/MikeZhang/archive/2012/02/10/nppRunGo.html
鏈榪?/span>google 鐨?/span>go 璇█嫻佽紼嬪害瓚婃潵瓚婂ぇ浜嗭紝瀛︾潃鍒漢鍐欑殑鍐呭鑷繁鍦?/span>windows 涓嬫惌寤轟簡涓涓畝鍗曠殑寮鍙戠幆澧冿紝璁板綍鍦ㄨ繖閲岋紝濡傛灉闇瑕佸弬鑰冪殑鍙互鍊熼壌銆?/span>
涓銆?span style="font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';"> 涓嬭澆緙栬瘧鍣?/span>
涓嬭澆 go璇█鐨勫紑鍙戝伐鍏峰彲浠ュ埌 http://code.google.com/p/gomingw/downloads/list 鍘諱笅杞斤紝榪欓噷鍒楀嚭浜嗗綋鍓嶆渶鏂扮殑鐗堟湰銆?/span>
鎴戦夋嫨涓嬭澆 http://gomingw.googlecode.com/files/gowin386_release.r60.3.zip
涓嬭澆瀹屾瘯涔嬪悗錛屽氨鏄竴涓帇緙╁寘錛屾垜浠妸瀹冭В鍘嬬緝錛屾渶緇堣В鍘嬬緝鍚庣殑鐩綍浠?/span>go 鍛藉悕銆?/span>
浜屻?span style="font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';"> 閰嶇疆鐜鍙橀噺
緙栬瘧宸ュ叿涓嬭澆涔嬪悗瑙e帇緙╋紝灝辨槸涓涓洰褰曪紝鍚庢湡鎴戜滑闇瑕佸湪鍛戒護琛屾垨鑰呭伐鍏蜂腑璋冪敤緙栬瘧紼嬪簭錛屾墍浠ラ渶瑕佹妸緙栬瘧宸ュ叿鐨勮礬寰勪互鍙婄浉鍏沖睘鎬ч厤緗繘緋葷粺鐜鍙橀噺銆?/span>
闇瑕佽瀹氱殑鐜鍙橀噺濡備笅錛?/span>
1. set goroot = go 緙栬瘧紼嬪簭涓葷洰褰曞叏璺緞
2. set goarch = 386
3. set path = %goroot% /bin
4. set goos = windows
鍏朵腑 go 鐩綍鍏ㄨ礬寰勬槸鎴戜滑鍓嶉潰瑙e帇緙╁悗鐨勪互 go 鍛藉悕鐨勭洰褰曪紝鎴戜滑榪欓噷鍋囪涓?/span>c:\go
1 銆佸湪 xp 鐜涓嬶細
鍦ㄦ闈?strong>鎴戠殑鐢?shù)鑴?/span>鍙抽敭錛屾煡鐪嬪睘鎬э紝寮瑰嚭緋葷粺灞炴у璇濇錛屽涓嬶細
鏂板緩鐜鍙橀噺錛?/span>
鍦?/span>vista 鍜?/span>win 鐜涓嬶細
鍦ㄦ闈?strong>璁$畻鏈?/span>鍙抽敭錛屾煡鐪嬪睘鎬э紝鎵撳紑緋葷粺淇℃伅紿楀彛錛屽啀鐐瑰嚮“楂樼駭緋葷粺璁劇疆”錛屽脊鍑虹郴緇熷睘鎬у璇濇錛屽璇濇涓?/span>XP 綾諱技錛屽叿浣撹緗弬鑰?/span>XP 緋葷粺璁劇疆閮ㄥ垎銆?/span>
涓夈?span style="font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';"> 閰嶇疆寮鍙戝伐鍏?/span>
寮鍙戝伐鍏鳳紝鎴戣繖閲屾帹鑽愪袱寮狅紝涓縐嶆槸 Notepad++ 錛屼竴縐嶆槸闆嗘垚寮鍙戠幆澧?/span>LiteIDE 銆?/span>
1錛?/span>Notepad++
Notepad++ 鐨勪富欏典負 http://notepad-plus-plus.org/ 錛屽ぇ瀹跺彲浠ヤ笂鍘昏嚜宸變笅鏈鏂扮殑鐗堟湰銆?/span>
紼嬪簭鐨勫畨瑁呬笌鏅氱▼搴忔病鏈夊尯鍒紝瀹夎瀹屾瘯涔嬪悗灝卞彲浠ユ墦寮 notepad++ 銆?/span>
榛樿鎯呭喌涓嬶紝 notepad 鏄笉甯?/span>go 璇█鐨勪唬鐮佽В閲婂櫒鐨勶紝涔熶笉甯︿究鎹風紪璇戝姛鑳姐傛墍浠ユ垜浠渶瑕佷笅杞藉畨瑁?/span>go 璇█鐨勪唬鐮佽В閲婂櫒錛屽茍榪涜閫傚綋閰嶇疆銆?/span>
鎿嶄綔姝ラ濡備笅錛?/span>
錛?/span>1 錛変笅杞借璦瑙f瀽妯℃澘
go 璇█瑙f瀽妯℃澘錛?/span>http://notepad-plus.sourceforge.net/commun/userDefinedLang/go.zip
涓嬭澆涔嬪悗錛岃В鍘嬬緝錛岄噷闈㈡湁“ go.xml ”錛?#8220; userDefineLang_Go.xml ”錛?#8220; README ”涓変釜鏂囦歡錛屾垜浠噸鐐瑰叧娉ㄥ墠闈袱涓枃浠躲?/span>
錛?/span>2 錛夊皢鏂囦歡 userDefineLang_Go.xml 鍐呭 copy 鑷?/span>Application Data 涓?/span>Notepad++ 鐩綍鐨?/span>userDefineLang.xml 涓紝濡傛灉娌℃湁璇ユ枃浠訛紝鍒欑洿鎺?/span>userDefineLang_Go.xml 鏂囦歡鍚嶆敼鎴?/span>userDefineLang.xml 澶嶅埗榪囧幓銆?/span> 銆銆 XP: C:\Documents and Settings\[username] \Application Data\Notepad++ 銆 銆 Vista/Win7 : C:\Users\[username] \AppData\Roaming\Notepad++
鎷瘋礉榪囧幓涔嬪悗錛屾墦寮 userDefineLang.xml 鏂囦歡錛屾妸鏂囦歡鍓嶉潰涓庢渶鍚庣殑“ <!-- <NotepadPlus> --> ”鍜?#8220; <!-- </NotepadPlus> --> ”鍒嗗埆鏀規(guī)垚“ <NotepadPlus> ”鍜?#8220; </NotepadPlus> ” , 鏀瑰畬淇濆瓨涔嬪悗
錛?/span>3 錛夊皢 go.xml 鏂囦歡 copy 鑷?/span>notepad++ 瀹夎鐩綍涓嬬殑 plugins\APIs 鐩綍錛堜緥濡傦細 D:\Program Files\Notepad++\plugins\APIs 錛夛紱
錛?/span>4 錛夐噸鍚?/span>notepad++ 紼嬪簭錛屽湪璇█鑿滃崟涓嬪彲浠ョ湅瑙?/span>go 銆?/span>
錛?/span>5 錛夎瀹氬揩鎹風紪璇戝懡浠ゃ?/span>
鎵撳紑 Notepad++ 紼嬪簭涔嬪悗錛岃繍琛?/span>F5 鍛戒護
鍦ㄥ脊鍑虹殑瀵硅瘽妗嗕腑杈撳叆浠ヤ笅鍐呭錛?#8220; cmd /k 8g.exe -o tmp.8 "$(FULL_CURRENT_PATH)" & 8l.exe -o tmp.exe tmp.8 & del tmp.8 & tmp.exe & PAUSE & del tmp.exe & EXIT ”銆?/span> 淇濆瓨涓?/span>"Run Go" 錛屽茍璁劇疆 Ctrl+F6 涓哄揩鎹烽敭銆?/span>
錛?/span>6 錛夋祴璇曠紪璇?/span>
鎴戜滑浣跨敤 notepad++ 鏂板緩涓涓?/span>hello.go 鏂囦歡錛屽湪鍏朵腑杈撳叆浠ヤ笅浠g爜銆?/span>
package main import "fmt" func main() { fmt.Println("Hello World 錛?/span>") }
鍐嶆寜“ Ctrl+F6 ”蹇嵎閿?/span>
寮瑰嚭紿楀彛鏄劇ず 錛岃瘉鏄庣幆澧冮厤緗畬姣曘?/span>
鎴戜滑涔熷彲浠ュ湪 dos 鍛戒護紿楀彛涓墽琛岀紪璇戣繍琛屽懡浠ゃ?/span>
緙栬瘧錛?/span>8g -o hello.8 hello.go 閾炬帴錛?/span>8l -o hello.exe hello.8 榪愯錛?/span>hello.exe
2錛?/span>LiteIDE
LiteIDE 鏄?/span>go 璇█寮鍙戜竴涓泦鎴愮幆澧冿紝鍙互鍒?/span>
http://code.google.com/p/golangide/downloads/list 鍘繪煡鐪嬫渶鏂扮増鏈?/span>
鎴戜滑榪欓噷涓嬭澆 LiteIDE12.2_windows鐗堟湰 銆?/span>
榪欎釜宸ュ叿鐨勯厤緗湪涓嬭澆澶勬湁鏂囨。璇存槑錛岃繖閲屽氨涓嶈緇嗕粙緇嶄簡銆?/span>
甯屾湜鍐欑殑鍐呭瀵瑰ぇ瀹舵湁甯姪銆?/span>
]]> Qt紼嬪簭Release妯″紡緙栬瘧 http://m.shnenglu.com/cc/archive/2012/11/12/195075.html鍖楅涔嬬007 鍖楅涔嬬007 Mon, 12 Nov 2012 06:01:00 GMT http://m.shnenglu.com/cc/archive/2012/11/12/195075.html http://m.shnenglu.com/cc/comments/195075.html http://m.shnenglu.com/cc/archive/2012/11/12/195075.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/195075.html http://m.shnenglu.com/cc/services/trackbacks/195075.html 鍦↙inux涓嬬敤Qt寮鍙戜簡涓浜涚晫闈㈢殑紼嬪簭錛岀紪璇戝嚭鏉ョ粨鏋滄瘮杈冨ぇ錛屾湁鐨勯兘涓婄櫨鍏嗭紝鏌ヤ簡涔嬪悗鎵嶇煡閬撶紪璇戝嚭鏉ョ殑紼嬪簭涓嶆槸release妯″紡鐨勶紝鎴戜滑闇瑕佸湪pro鏂囦歡涓鍔犵紪璇戞寚浠わ紝鐢╮elease妯″紡緙栬瘧錛屾晥鐜囨柟闈㈡病鏈夊仛嫻嬭瘯錛屼笉榪囩▼搴忎綋縐彧鏄箣鍓嶇殑鍗佸垎涔嬩竴錛屾甯鎬簡寰堝銆?br /> 鍏跺疄鎴戜滑瑕佸仛鐨勪笉澶氾紝鍙鍦╬ro鏂囦歡涓鍔犱互涓嬬殑閫夐」鍗沖彲錛岃繖鏍峰氨鍙互release妯″紡緙栬瘧浜嗐?br />CONFIG+= release
]]> 浣跨敤jpeglib搴撳疄鐜癰mp杞琷pg (杞? http://m.shnenglu.com/cc/archive/2012/02/22/166217.html鍖楅涔嬬007 鍖楅涔嬬007 Wed, 22 Feb 2012 03:04:00 GMT http://m.shnenglu.com/cc/archive/2012/02/22/166217.html http://m.shnenglu.com/cc/comments/166217.html http://m.shnenglu.com/cc/archive/2012/02/22/166217.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/166217.html http://m.shnenglu.com/cc/services/trackbacks/166217.html 涓銆?/span>vc 緙栬瘧jpeglib搴?/h1> 1 銆佷笅杞芥簮浠g爜 涓嬭澆鍦板潃錛?/span>http://www.ijg.org/銆傛敞鎰忥細涓瀹氳涓嬭澆 win32 鐗堟湰
2 銆佺紪璇戞簮浠g爜 . A銆佽В鍘嬫簮浠g爜錛屼慨鏀規(guī)簮浠g爜涓?/span>jconfig.vc涓?/span>jconfig.h錛?/span>
B銆佹坊鍔犵幆澧冨彉閲?/span>PATH錛?/span>C:/Program Files/Microsoft Visual Studio/VC98/Bin 錛?/span>
C銆佷慨鏀?/span>makefile.vc錛屽皢 Pull in standard variable definitions涓嬮潰鐨勪竴琛屾崲涓猴細 !include <C:/Program Files/Microsoft Visual Studio/VC98/Include/win32.mak> 錛?/span>
D銆佽繘鍏ュ懡浠ゆ彁紺虹幆澧冧笅錛岃緭鍏ワ細 vcvars32 鍥炶濺錛岃繖鏄竴涓敤鏉ヨ緗?/span>VC璺緞鐜鐨勬壒澶勭悊錛?/span>
E銆佺紪璇戠敓鎴愬簱鏂囦歡 鍛戒護錛?/span>nmake /f makefile.vc nodebug=1錛?/span>
榪欐牱灝?/span>OK浜?/span>
3 銆?/span>jpeglib 搴?/span>VC 涓嬩嬌鐢?/span> 瀵逛簬搴撶殑浣跨敤鍙渶瑕佹湁鐩稿簲鐨?/span>.lib鏂囦歡鍜屽ご鏂囦歡灝卞彲浠ヤ簡銆?/span>Vc涓娣誨姞 libjpeg.lib搴撶殑榪炴帴
灝嗚繖鍑犱釜鏂囦歡鎷瘋礉鍒頒綘鐨勯」鐩腑錛?/span>libjpeg.lib錛?/span>jconfig.h錛?/span>jmorecfg.h錛?/span>jpeglib.h錛屽湪浣犻渶瑕佽繘琛屽帇緙╃殑鏂囦歡涓姞鍏?/span>
extern "C" {
#include "jpeglib.h"
#include "jmorecfg.h"
#include "jconfig.h"
}
鍙傝冿細
http://blog.csdn.net/xingyu19871124/archive/2009/06/30/4310800.aspx
灝忕煡璇嗭細 bmp鏂囦歡鐨勫墠 54涓瓧鑺傛槸澶達紝鍚庨潰鎵嶆槸鍍忕礌鍊箋?/span>
浜屻佷嬌鐢╦peg 搴撳帇緙?/span> 鍦ㄦ簮浠g爜鐨勬枃浠跺す涓嬮潰鏈変竴涓?/span>example.c鐨勬枃浠跺拰 libjpeg.txt錛屽緢鏈夊弬鑰冧環(huán)鍊箋?/span>
1 銆佸熀鏈濊礬 棣栧厛璋冪敤鎴睆紼嬪簭錛屽皢灞忓箷鐨勪綅鍥句俊鎭瓨鏀懼湪涓涓?/span>buffer閲岄潰錛岀劧鍚庤皟鐢?/span>jpg鍘嬬緝鍑芥暟錛屽湪褰撳墠鐨勭洰褰曚笅鐢熸垚涓涓?/span>ok.jpg鐨勬枃浠躲?/span>
2 銆佸嚭鐜扮殑闂錛?/h2> A銆佽繍琛屾槸鎬繪槸鎶ラ敊錛?/span>
鎴戝弬鑰冩簮浠g爜鐨勪緥瀛愶紝涔熺敤 JSAMPLE * image_buffer;鏉ユ寚鍚戜綅鍥劇殑鍍忕礌鐨勯鍦板潃錛岀紪璇戝彲浠ラ氳繃浣嗘槸榪愯鏃跺氨浼氭姤閿欙紝鍚庢潵鎴戠敤 BYTE *image_buffer;鏉ュ畾涔夊氨鍙互姝e父榪愯浜嗐?/span>
B銆佺敓鎴愮殑 jpg鍥懼儚澶辯湡錛?/span>
鐢變簬 window鐨勪綅鍥劇殑鍍忕礌鏍煎紡鏄細 BGRA錛?/span>4涓瓧鑺傦紝 jpeglib搴撲嬌鐢ㄧ殑鏄?/span>RGB錛?/span>3涓瓧鑺傜殑鏍煎紡錛屾墍浠ラ渶瑕佸皢婧愬儚绱犲幓鎺夊叾閫忔槑瀛楄妭錛屽悓鏃舵敼鍙?/span>RGB鐨勯『搴忋備唬鐮佸涓嬶細
//RGB欏哄簭璋冩暣
for (int i=0, int j=0; j < 1440*900*4; i+=3, j+=4)
{
*(image_buffer+i)=*(image_buffer+j+2);
*(image_buffer+i+1)=*(image_buffer+j+1);
*(image_buffer+i+2)=*(image_buffer+j);
}
C銆佺敓鎴愮殑 jpg鏂囦歡鍥懼儚鏄掔殑錛?/span>
鍘熷洜娌℃湁鎵懼埌錛屽悗鏉ヤ慨鏀逛簡鍘嬬緝鍑芥暟鐨勪唬鐮侊紝鐢熸垚浜嗘紜殑 jpg鏂囦歡
while (cinfo.next_scanline < cinfo.image_height) {
//榪欓噷鎴戝仛榪囦慨鏀癸紝鐢變簬 jpg鏂囦歡鐨勫浘鍍忔槸鍊掔殑錛屾墍浠ユ敼浜嗕竴涓嬭鐨勯『搴?/span>
//榪欐槸鍘熶唬鐮侊細 row_pointer[0] = & bits[cinfo.next_scanline * row_stride];
row_pointer[0] = & bits[(cinfo.image_height - cinfo.next_scanline - 1) * row_stride];
(void) jpeg_write_scanlines(&cinfo, row_pointer, 1);
}
3 銆佹祴璇曠粨鏋滐細 鎴戠紪鍐欎簡嫻嬭瘯浠g爜錛岃繛緇埅灞忓茍鐢熸垚 jpg鏂囦歡 100嬈★紝澶х害鑺辮垂 7縐掑乏鍙籌紝涔熷氨鏄 1縐掑彲浠ユ埅灞?/span>13嬈″乏鍙熾傚悓鏃剁敓鎴愮殑 jpg鏂囦歡鏈?/span>100澶?/span>K鐨勬牱瀛愩?/span>
涓夈佷唬鐮侊細
#include "stdafx.h" #include <atlbase.h> #include <afxwin.h> #include <WINDOWSX.H> #define JPEG_QUALITY 50 // 瀹冪殑澶у皬鍐沖畾jpg鐨勮川閲忓ソ鍧?/span> extern "C" { #include "jpeglib.h" #include "jmorecfg.h" #include "jconfig.h" } int savejpeg(char *filename, unsigned char *bits, int width, int height, int depth);void CapScreen(char filename[]); BYTE *image_buffer; // 鎸囧悜浣嶅浘buffer鐨勫叏灞鎸囬拡錛寃indow涓嬪儚绱犳牸寮? BGRA(4涓瓧鑺? int main(int argc, char * argv[]) { image_buffer = (BYTE *)malloc(1440 * 900 * 4); for (int i = 0; i < 100; i++){ CapScreen("ok.bmp"); // RGB欏哄簭璋冩暣 for (int i=0, int j=0; j < 1440*900*4; i+=3, j+=4) { *(image_buffer+i)=*(image_buffer+j+2); *(image_buffer+i+1)=*(image_buffer+j+1); *(image_buffer+i+2)=*(image_buffer+j); } savejpeg("ok.jpg", image_buffer, 1440, 900, 3); } delete [] image_buffer; return 0; } /* =================================================================================== function: jpeg鍘嬬緝 input: 1:鐢熸垚鐨勬枃浠跺悕,2:bmp鐨勬寚閽?3:浣嶅浘瀹藉害,4:浣嶅浘楂樺害,5:棰滆壊娣卞害 return: int description: bmp鐨勫儚绱犳牸寮忎負(RGB) =================================================================================== */ int savejpeg(char *filename, unsigned char *bits, int width, int height, int depth) { struct jpeg_compress_struct cinfo; struct jpeg_error_mgr jerr; FILE * outfile; /* target file */ JSAMPROW row_pointer[1]; /* pointer to JSAMPLE row[s] */ int row_stride; /* physical row width in image buffer */ cinfo.err = jpeg_std_error(&jerr); jpeg_create_compress(&cinfo); if ((outfile = fopen(filename, "wb")) == NULL) { fprintf(stderr, "can't open %s/n", filename); return -1; } jpeg_stdio_dest(&cinfo, outfile); cinfo.image_width = width; /* image width and height, in pixels */ cinfo.image_height = height; cinfo.input_components = 3; /* # of color components per pixel */ cinfo.in_color_space = JCS_RGB; /* colorspace of input image */ jpeg_set_defaults(&cinfo); jpeg_set_quality(&cinfo, JPEG_QUALITY, TRUE /* limit to baseline-JPEG values */ ); jpeg_start_compress(&cinfo, TRUE); row_stride = width * depth; /* JSAMPLEs per row in image_buffer */ while (cinfo.next_scanline < cinfo.image_height) { // 榪欓噷鎴戝仛榪囦慨鏀癸紝鐢變簬jpg鏂囦歡鐨勫浘鍍忔槸鍊掔殑錛屾墍浠ユ敼浜嗕竴涓嬭鐨勯『搴?br /> // 榪欐槸鍘熶唬鐮侊細row_pointer[0] = & bits[cinfo.next_scanline * row_stride]; row_pointer[0] = & bits[(cinfo.image_height - cinfo.next_scanline - 1) * row_stride]; (void ) jpeg_write_scanlines(&cinfo, row_pointer, 1); } jpeg_finish_compress(&cinfo); fclose(outfile); jpeg_destroy_compress(&cinfo); return 0; } void CapScreen(char filename[]) { CDC *pDC; pDC = CDC::FromHandle(GetDC(GetDesktopWindow())); if (pDC == NULL) return ; int BitPerPixel = pDC->GetDeviceCaps(BITSPIXEL); int Width = pDC->GetDeviceCaps(HORZRES); int Height = pDC->GetDeviceCaps(VERTRES); CDC memDC; if (memDC.CreateCompatibleDC(pDC) == 0) return ; CBitmap memBitmap, *oldmemBitmap; if (memBitmap.CreateCompatibleBitmap(pDC, Width, Height) == NULL) return ; oldmemBitmap = memDC.SelectObject(&memBitmap); if (oldmemBitmap == NULL) return ; if (memDC.BitBlt(0, 0, Width, Height, pDC, 0, 0, SRCCOPY) == 0) return ; BITMAP bmp; memBitmap.GetBitmap(&bmp); // fp = fopen(filename, "w+b"); BITMAPINFOHEADER bih = {0}; bih.biBitCount = bmp.bmBitsPixel; bih.biCompression = BI_RGB; bih.biHeight = bmp.bmHeight; bih.biPlanes = 1; bih.biSize = sizeof (BITMAPINFOHEADER); bih.biSizeImage = bmp.bmWidthBytes * bmp.bmHeight; bih.biWidth = bmp.bmWidth; BITMAPFILEHEADER bfh = {0}; bfh.bfOffBits = sizeof (BITMAPFILEHEADER) + sizeof (BITMAPINFOHEADER); bfh.bfSize = bfh.bfOffBits + bmp.bmWidthBytes * bmp.bmHeight; bfh.bfType = (WORD)0x4d42; // fwrite(&bfh, 1, sizeof(BITMAPFILEHEADER), fp); // fwrite(&bih, 1, sizeof(BITMAPINFOHEADER), fp); image_buffer = new BYTE[bmp.bmWidthBytes * bmp.bmHeight]; GetDIBits(memDC.m_hDC, (HBITMAP) memBitmap.m_hObject, 0, Height, image_buffer, (LPBITMAPINFO) &bih, DIB_RGB_COLORS); memDC.SelectObject(oldmemBitmap); // fwrite(p, 1, 1280 * 800 * 4, fp); // fclose(fp); }
]]>VC6.0涓嬬殑GDI+閰嶇疆(杞? http://m.shnenglu.com/cc/archive/2012/02/21/166167.html鍖楅涔嬬007 鍖楅涔嬬007 Tue, 21 Feb 2012 12:23:00 GMT http://m.shnenglu.com/cc/archive/2012/02/21/166167.html http://m.shnenglu.com/cc/comments/166167.html http://m.shnenglu.com/cc/archive/2012/02/21/166167.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/166167.html http://m.shnenglu.com/cc/services/trackbacks/166167.html GDI Plus 鎻忚堪錛?/strong>
GDIPlus鏄井杞嚭鐨勪竴涓狢++闈㈠悜瀵硅薄搴擄紝瀹冧負windows鐨勫浘褰㈣澶囨帴鍙f彁渚涗簡鏇村ソ鐨勮闂備笌鏍囧噯鐨剋indows GDI鐩告瘮錛屼簩緇寸粯鍥懼拰鍥劇墖浣跨敤寰楀埌寰堝ぇ鏀硅繘銆備嬌鐢℅DIPlus浣犲彲浠ョ粯鍒跺畾鍒剁殑瀵硅薄錛屾墦寮鍚勭鍥劇墖騫朵互鍚勭鏍煎紡瀛樺偍瀹冧滑錛屼嬌鐢ㄥ縐嶅瓧浣撳拰鏂囨湰緇樺埗杞ㄨ抗 鍜屽悇縐嶈皟鑹叉澘鍔熻兘銆?/span>
GDI Plus鍏煎鎬э細
GDIPlus鏈鍒濇槸涓篗S Visual Studio 7寮鍙戠殑錛屼絾鏄洜涓鴻繖涓駭鍝佺殑鍙戝竷鎺ㄨ繜浜嗭紝鎵浠ュ井杞氨涓篤isual Studio 6鍙戣浜嗚繖涓簱鐨勭増鏈傚鏋滀綘浣跨敤Visual Studio 6錛屽彲浠ヤ粠榪欓噷涓嬭澆MFC GDI Plus搴撴枃浠躲?/span>http://www.codersource.net/samples/mfcgdiplus.zip
a錛塚isual Studio 7鎴栬呮洿鏂扮増鏈嬌鐢ㄨ繖涓被搴擄紝鍙渶瑕佸湪浣犵殑宸ョ▼閲岄潰鍖呭惈<gdiplus.h>
b錛夋棭鏈熺増鏈殑MSVS瑕佷嬌鐢ㄨ繖涓被搴擄紝闇瑕佸皢涓嬭澆鐨剒ip鏂囦歡瑙e帇鍒頒竴涓枃浠跺す錛岃鍏惰礬寰勪負your_path錛岀劧鍚庡皢鐩綍your_path\ gdiplus\includes鍔犲叆鍒板紑鍙戠幆澧冪殑鍖呭惈璺緞涓紙Tools->Options->Directories-> Include files錛夛紝鐒跺悗鍦ㄤ綘鐨勫伐紼嬩腑浣犲繀欏誨寘鍚枃浠?lt;gdiplus>錛屼絾鏄湪閭d箣鍓嶄綘蹇呴』瀹氫箟define ULONG_PTR錛堣繖鏄疓DIPlus涓殑涓涓畾涔夛紝鍦ㄨ佺増鏈殑VS涓病鏈夊畾涔夎繃錛夈備篃灝辨槸璇達紝鍦⊿tdAfx.h涓綘闇瑕佹坊鍔犲涓嬩唬鐮侊細
#define ULONG_PTR ULONG include <gdiplus.h>
鐒跺悗灝嗙洰褰晊our_path\gdiplus\lib鍖呭惈鍒頒綘鐨勫伐紼嬶紙Tools->Options->Directories->Library files錛夛紝浠ヤ嬌瀹冧滑鍙互閾炬帴鍒頒綘鐨勭▼搴忋?/span>
銆恊fivol琛ュ厖錛氳繕蹇呴』鍦⊿tdAfx.h涓?include <gdiplus.h>涔嬪悗鍔犲叆榪欎袱鍙ワ紝涓嶇劧鏈夐敊銆?/span>
using namespace Gdiplus; #pragma comment(lib, "gdiplus.lib")
琛ュ厖瀹屾瘯銆?/span>鍦ㄧ紪璇戝畬浣犵殑宸ョ▼涔嬪悗錛屽皢your_path\gdiplus\gdiplus.dll鎷瘋礉鍒扮敓鎴愮殑鎵ц鏂囦歡鎵鍦ㄧ殑鏂囦歡澶癸紙\Debug鎴栬匼Release錛?/span>
浣跨敤GDI Plus綾誨簱錛?/strong>
瑕佷嬌鐢℅DI Plus綾誨簱錛屼綘蹇呴』棣栧厛鍒濆鍖栫被搴撱傚垵濮嬪寲鏄竴涓皟鐢ㄤ袱涓弬鏁扮殑鍑芥暟錛岃繖涓や釜鍙傛暟鏄繀欏誨湪鏁翠釜GDIPlus浼氳瘽涓兘瀛樺湪鐨勫彉閲忋傚湪浣跨敤瀹孏DIPlus涔嬪悗錛屽繀欏昏皟鐢ㄤ竴涓嚱鏁版潵鍏抽棴浼氳瘽銆?/span>
濡傛灉浣犱嬌鐢∕FC錛屼竴涓ソ鐨勬柟娉曟槸鍦ㄤ綘鐨凜WinApp媧劇敓鐨勭被涓紙姣斿CYourProjectApp錛夋坊鍔犲彉閲忥細
private錛?/span>GdiplusStartupInput m_gdiplusStartupInput; ULONG_PTR m_pGdiToken;
鐒跺悗鍦╝pp鐨処nitInstance鍑芥暟涓殑寮濮嬫坊鍔犱竴琛屼唬鐮侊細
GdiplusStartup(&m_pGdiToken,&m_gdiplusStartupInput,NULL); //gdi+ init
鐒跺悗閲嶈澆ExitInstance鍑芥暟錛堝鏋滄病鏈夌殑璇濓級錛屽湪鍏朵腑娣誨姞涓琛屼唬鐮侊細
GdiplusShutdown(m_pGdiToken); //gdi+ end session
榪欎簺鎿嶄綔涔嬪悗浣犲氨鍙互鍦ㄤ綘鐨勭▼搴忎腑浣跨敤綾誨簱鐨勫姛鑳戒簡銆?/span>
鍙互浣跨敤浜嗕箞錛熶笉鍙互銆傛垜浠柊寤轟竴涓崟鏂囨。鐨勫伐紼嬶紝鎸変笂闈㈢殑姝ラ鍋氬畬錛岀劧鍚庡湪View綾葷殑OnDraw錛堬級鍑芥暟閲屾坊鍔犲涓嬩唬鐮侊細
Graphics graphics(pDC->m_hDC); Pen pen(Color(255, 0, 255)); graphics.DrawLine(&pen, 0, 0, 200, 100);
緙栬瘧錛屽嚭閿欍傚氨榪欐牱榪樻槸琚緢澶氫漢杞澆錛屽彲鎭跺惂銆?/span>
閿欒鎻愮ず涓猴細 f:\includes\gdiplusenums.h(29) : error C2146: syntax error : missing ';' before identifier 'GraphicsState' f:\includes\gdiplusenums.h(29) : fatal error C1004: unexpected end of file found
榪欎釜閿欒鍦ㄧ綉涓婄櫨搴︿竴涓嬫湁寰堝錛岄棶鐨勪漢澶氾紝鍥炵瓟鐨勪漢涔熷錛屼絾灝辨槸鍑犱箮娌℃湁浜虹瓟瀵廣傝В鍐蟲柟娉曟槸
鍦?include <gdiplus.h>涔嬪墠鍔犱笂#include <afxdtctl.h>
濂戒簡錛屼竴鏉$嚎鐢誨嚭鏉ヤ簡銆備負浠涔堝晩錛岃繖灝變笉鐭ラ亾浜嗭紝鎹榪欎釜鏂囦歡鐨勪綔鐢ㄦ槸涓篒E4鍏叡鎺т歡鎻愪緵MFC鏀寔銆?/span>
鏌蟲殫鑺辨槑涔嬪悗錛屾墠鍙戠幇榪欓噷鏈夌瘒鏂囩珷 Hints to get GDI+ running 錛屾槸涓涓漢鍐欑殑寤鴻銆?/span>
閲岄潰璇達紝瑕侀槻姝㈢紪璇戦敊璇拰闂錛岄渶瑕佸湪#include <gdiplus.h>涔嬪墠鍔犱笂#include <afxwin.h>銆?lt;afxext.h>銆?lt;afxdisp.h>鍜?lt;afxdtctl.h>銆?/span>
]]> Linux涓婹T紼嬪簭瀛椾綋璁懼畾閿欒閫犳垚紼嬪簭涓枃涔辯爜 http://m.shnenglu.com/cc/archive/2010/09/25/127673.html鍖楅涔嬬007 鍖楅涔嬬007 Sat, 25 Sep 2010 14:37:00 GMT http://m.shnenglu.com/cc/archive/2010/09/25/127673.html http://m.shnenglu.com/cc/comments/127673.html http://m.shnenglu.com/cc/archive/2010/09/25/127673.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/127673.html http://m.shnenglu.com/cc/services/trackbacks/127673.html 鏈榪戝湪Linux鐜涓嬪啓QT鐨勭▼搴忥紝鍦ㄦ垜鐨勬祴璇曟満鍣ㄤ笂闈T紼嬪簭錛屽湪鍚姩鐨勬椂鍊欒瀹氫簡瀛楃闆嗕負GBK錛屼腑鏂囬兘鏄樉紺烘甯哥殑錛屾病鏈変換浣曢棶棰橈紝鐒跺悗鍚屽鍦ㄤ粬鐨勮櫄鎷熸満涓婇潰涔熷啓浜哘T紼嬪簭錛屽彲浠ユ庝箞寮勪腑鏂囬兘鏄貢鐮侊紝浠涔圙BK錛孶TF-8絳夌瓑鐨勭紪鐮侀兘璁懼畾浜嗭紝鍙槸渚濈劧涔辯爜錛屽垎鏋愯繖縐嶆儏鍐靛簲璇ヤ笉鏄▼搴忕殑闂錛屽緢鍙兘鏄疩T瀛椾綋鐨勯棶棰橈紝浜庢槸鍦ㄥ懡浠よ杈撳叆qtconfig 錛屽叾浠栦簡qt閰嶇疆紼嬪簭錛屽湪鍏朵腑璁懼畾浜嗗叾浠栫殑瀛椾綋錛屽彂鐜扮▼搴忕殑涓枃灝辮兘姝e父鏄劇ず浜嗐?br> 鍥犳錛屾湁鏃跺欑▼搴忔病鏈夐棶棰樹簡錛屼絾鏄疩T鐨勫瓧浣撹瀹氶敊璇篃浼氶犳垚涓枃涔辯爜鐜拌薄錛屾垜浠彲浠ヤ笉閫氳繃qtconfig紼嬪簭鏀瑰彉榛樿qt紼嬪簭鐨勫瓧浣擄紝榪樺彲浠ュ湪紼嬪簭涓己鍒惰瀹氱▼搴忔湰韜墍鐢ㄧ殑榛樿瀛椾綋錛岃繖鏍蜂篃鏄彲浠ョ殑錛岃繖閲屽彧浠嬬粛榪欐牱鐨勬濊礬錛屼唬鐮佸氨涓嶈創(chuàng)浜嗭紝甯屾湜澶у紕拌鐨勬椂鍊欐湁涓弬鑰冦?/span> ]]> C 浠g爜浼樺寲錛堣漿錛?/title> http://m.shnenglu.com/cc/archive/2010/05/24/116216.html鍖楅涔嬬007 鍖楅涔嬬007 Mon, 24 May 2010 06:04:00 GMT http://m.shnenglu.com/cc/archive/2010/05/24/116216.html http://m.shnenglu.com/cc/comments/116216.html http://m.shnenglu.com/cc/archive/2010/05/24/116216.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/116216.html http://m.shnenglu.com/cc/services/trackbacks/116216.html 璋堝埌浼樺寲錛屽緢澶氫漢閮戒細鐩存帴鎯沖埌姹囩紪銆傞毦閬撲紭鍖栧彧鑳藉湪姹囩紪灞傛鍚楋紵褰撶劧涓嶆槸錛孋++灞傛涓鏍峰彲浠ヤ綔浠g爜浼樺寲錛屽叾涓湁浜涘父甯告槸鎰忔兂涓嶅埌鐨勩傚湪C++灞傛榪涜浼樺寲錛屾瘮鍦ㄦ眹緙栧眰嬈′紭鍖栧叿鏈夋洿濂界殑縐繪鎬э紝搴旇鏄紭鍖栦腑鐨勯閫夊仛娉曘?nbsp; 1.紜畾嫻偣鍨嬪彉閲忓拰琛ㄨ揪寮忔槸 float 鍨?nbsp; 涓轟簡璁╃紪璇戝櫒浜х敓鏇村ソ鐨勪唬鐮?姣斿璇翠駭鐢?DNow! 鎴朣SE鎸囦護鐨勪唬鐮?錛屽繀欏葷‘瀹氭誕鐐瑰瀷鍙橀噺鍜岃〃杈懼紡鏄?float 鍨嬬殑銆傝鐗瑰埆娉ㄦ剰鐨勬槸錛屼互 "錛汧"錛?鎴?"錛沠"錛?涓哄悗緙錛堟瘮濡傦細3.14f錛夌殑嫻偣甯擱噺鎵嶆槸 float 鍨嬶紝鍚﹀垯榛樿鏄?double 鍨嬨備負浜嗛伩鍏?float 鍨嬪弬鏁拌嚜鍔ㄨ漿鍖栦負 double錛岃鍦ㄥ嚱鏁板0鏄庢椂浣跨敤 float銆?nbsp; 2.浣跨敤32浣嶇殑鏁版嵁綾誨瀷 銆銆緙栬瘧鍣ㄦ湁寰堝縐嶏紝浣嗗畠浠兘鍖呭惈鐨勫吀鍨嬬殑32浣嶇被鍨嬫槸錛歩nt錛宻igned錛宻igned int錛寀nsigned錛寀nsigned int錛宭ong錛宻igned long錛宭ong int錛宻igned long int錛寀nsigned long錛寀nsigned long int銆傚敖閲忎嬌鐢?2浣嶇殑鏁版嵁綾誨瀷錛屽洜涓哄畠浠瘮16浣嶇殑鏁版嵁鐢氳嚦8浣嶇殑鏁版嵁鏇存湁鏁堢巼銆?nbsp; 3.鏄庢櫤浣跨敤鏈夌鍙鋒暣鍨嬪彉閲?nbsp; 銆銆鍦ㄥ緢澶氭儏鍐典笅錛屼綘闇瑕佽冭檻鏁村瀷鍙橀噺鏄湁絎﹀彿榪樻槸鏃犵鍙風被鍨嬬殑銆傛瘮濡傦紝淇濆瓨涓涓漢鐨勪綋閲嶆暟鎹椂涓嶅彲鑳藉嚭鐜拌礋鏁幫紝鎵浠ヤ笉闇瑕佷嬌鐢ㄦ湁絎﹀彿綾誨瀷銆備絾鏄紝濡傛灉鏄淇濆瓨娓╁害鏁版嵁錛屽氨蹇呴』浣跨敤鍒版湁絎﹀彿鐨勫彉閲忋?nbsp; 銆銆鍦ㄨ澶氬湴鏂癸紝鑰冭檻鏄惁浣跨敤鏈夌鍙風殑鍙橀噺鏄繀瑕佺殑銆傚湪涓浜涙儏鍐典笅錛屾湁絎﹀彿鐨勮繍綆楁瘮杈冨揩錛涗絾鍦ㄤ竴浜涙儏鍐典笅鍗寸浉鍙嶃?nbsp; 銆銆姣斿錛氭暣鍨嬪埌嫻偣杞寲鏃訛紝浣跨敤澶т簬16浣嶇殑鏈夌鍙鋒暣鍨嬫瘮杈冨揩銆傚洜涓簒86鏋勬灦涓彁渚涗簡浠庢湁絎﹀彿鏁村瀷杞寲鍒版誕鐐瑰瀷鐨勬寚浠わ紝浣嗘病鏈夋彁渚涗粠鏃犵鍙鋒暣鍨嬭漿鍖栧埌嫻偣鐨勬寚浠ゃ傜湅鐪嬬紪璇戝櫒浜х敓鐨勬眹緙栦唬鐮侊細 銆銆涓嶅ソ鐨勪唬鐮侊細 緙栬瘧鍓? 緙栬瘧鍚?nbsp; double x錛?nbsp; mov [foo + 4], 0 unsigned int i錛?nbsp; mov eax, i x = i錛?nbsp; mov [foo], eax flid qword ptr [foo] fstp qword ptr [x] 銆銆涓婇潰鐨勪唬鐮佹瘮杈冩參銆備笉浠呭洜涓烘寚浠ゆ暟鐩瘮杈冨錛岃屼笖鐢變簬鎸囦護涓嶈兘閰嶅閫犳垚鐨凢LID鎸囦護琚歡榪熸墽琛屻傛渶濂界敤浠ヤ笅浠g爜浠f浛錛?nbsp; 鎺ㄨ崘鐨勪唬鐮侊細 緙栬瘧鍓?nbsp; 緙栬瘧鍚?nbsp; double x錛?nbsp; fild dword ptr int i錛?nbsp; fstp qword ptr [x] x = i錛?nbsp; 銆銆鍦ㄦ暣鏁拌繍綆椾腑璁$畻鍟嗗拰浣欐暟鏃訛紝浣跨敤鏃犵鍙風被鍨嬫瘮杈冨揩銆備互涓嬭繖孌靛吀鍨嬬殑浠g爜鏄紪璇戝櫒浜х敓鐨?2浣嶆暣鍨嬫暟闄や互4鐨勪唬鐮侊細 銆銆涓嶅ソ鐨勪唬鐮?nbsp; 緙栬瘧鍓? 緙栬瘧鍚?nbsp; int i錛?nbsp; mov eax, i i = i / 4錛? cdq and edx, 3 add eax, edx sar eax, 2 mov i, eax 鎺ㄨ崘鐨勪唬鐮?br>緙栬瘧鍓? 緙栬瘧鍚?nbsp; unsigned int i錛? shr i, 2 i = i / 4錛?nbsp; 銆鎬葷粨錛?br>銆鏃犵鍙風被鍨嬬敤浜庯細闄ゆ硶鍜屼綑鏁?寰幆璁℃暟,鏁扮粍涓嬫爣 鏈夌鍙風被鍨嬬敤浜庯細鏁村瀷鍒版誕鐐圭殑杞寲 4.while VS. for 銆銆鍦ㄧ紪紼嬩腑錛屾垜浠父甯擱渶瑕佺敤鍒版棤闄愬驚鐜紝甯哥敤鐨勪袱縐嶆柟娉曟槸while (1) 鍜?for (錛涳紱)銆傝繖涓ょ鏂規(guī)硶鏁堟灉瀹屽叏涓鏍鳳紝浣嗛偅涓縐嶆洿濂藉憿錛熺劧鎴戜滑鐪嬬湅瀹冧滑緙栬瘧鍚庣殑浠g爜錛?nbsp; 緙栬瘧鍓? 緙栬瘧鍚?nbsp; while (1)錛? mov eax,1 test eax,eax je foo+23h jmp foo+18h 緙栬瘧鍓? 緙栬瘧鍚?nbsp; for (錛涳紱)錛? jmp foo+23h 銆銆涓鐩簡鐒訛紝for (錛涳紱)鎸囦護灝戯紝涓嶅崰鐢ㄥ瘎瀛樺櫒錛岃屼笖娌℃湁鍒ゆ柇璺寵漿錛屾瘮while (1)濂姐?nbsp; 5.浣跨敤鏁扮粍鍨嬩唬鏇挎寚閽堝瀷 銆銆浣跨敤鎸囬拡浼氫嬌緙栬瘧鍣ㄥ緢闅句紭鍖栧畠銆傚洜涓虹己涔忔湁鏁堢殑鎸囬拡浠g爜浼樺寲鐨勬柟娉曪紝緙栬瘧鍣ㄦ繪槸鍋囪鎸囬拡鍙互璁塊棶鍐呭瓨鐨勪換鎰忓湴鏂癸紝鍖呮嫭鍒嗛厤緇欏叾浠栧彉閲忕殑鍌ㄥ瓨絀洪棿銆傛墍浠ヤ負浜嗙紪璇戝櫒浜х敓浼樺寲寰楁洿濂界殑浠g爜錛岃閬垮厤鍦ㄤ笉蹇呰鐨勫湴鏂逛嬌鐢ㄦ寚閽堛備竴涓吀鍨嬬殑渚嬪瓙鏄闂瓨鏀懼湪鏁扮粍涓殑鏁版嵁銆侰++ 鍏佽浣跨敤鎿嶄綔絎?[] 鎴栨寚閽堟潵璁塊棶鏁扮粍錛屼嬌鐢ㄦ暟緇勫瀷浠g爜浼氳浼樺寲鍣ㄥ噺灝戜駭鐢熶笉瀹夊叏浠g爜鐨勫彲鑳芥с傛瘮濡傦紝x[0] 鍜寈[2] 涓嶅彲鑳芥槸鍚屼竴涓唴瀛樺湴鍧錛屼絾 *p 鍜?*q 鍙兘銆傚己鐑堝緩璁嬌鐢ㄦ暟緇勫瀷錛屽洜涓鴻繖鏍峰彲鑳戒細鏈夋剰鏂欎箣澶栫殑鎬ц兘鎻愬崌銆?nbsp; 涓嶅ソ鐨勪唬鐮?br>typedef struct { 銆銆float x,y,z,w錛?br>} VERTEX錛?br>typedef struct{ 銆銆float m[4][4]錛?br>} MATRIX錛?br>void XForm(float* res, const float* v, const float* m, int nNumVerts) { 銆銆float dp錛?br>銆銆int i錛?br>銆銆銆const VERTEX* vv = (VERTEX *)v錛?br>銆銆銆for (i = 0錛?i <錛?nNumVerts錛?i++) 銆銆{ 銆銆銆銆dp = vv->錛泋 * *m ++錛?br>銆銆銆銆dp += vv->錛泍 * *m ++錛?br>銆銆銆銆dp += vv->錛泎 * *m ++錛?br>銆銆銆銆dp += vv->錛泈 * *m ++錛?br>銆銆銆銆*res ++ = dp錛涖銆銆銆銆銆// 鍐欏叆杞崲浜嗙殑 x 銆銆銆銆dp = vv->錛泋 * *m ++錛?br>銆銆銆銆dp += vv->錛泍 * *m ++錛?br>銆銆銆銆dp += vv->錛泎 * *m ++錛?br>銆銆銆銆dp += vv->錛泈 * *m ++錛?br>銆銆銆銆*res ++ = dp錛涖銆銆銆銆// 鍐欏叆杞崲浜嗙殑 y 銆銆銆銆dp = vv->錛泋 * *m ++錛?br>銆銆銆銆dp += vv->錛泍 * *m ++錛?br>銆銆銆銆dp += vv->錛泎 * *m ++錛?br>銆銆銆銆dp += vv->錛泈 * *m ++錛?br>銆銆銆銆*res ++ = dp錛涖銆銆銆// 鍐欏叆杞崲浜嗙殑 z 銆銆銆銆dp = vv->錛泋 * *m ++錛?br>銆銆銆銆dp += vv->錛泍 * *m ++錛?br>銆銆銆銆dp += vv->錛泎 * *m ++錛?br>銆銆銆銆dp += vv->錛泈 * *m ++錛?br>銆銆銆銆*res ++ = dp錛涖銆銆銆// 鍐欏叆杞崲浜嗙殑 w 銆銆銆銆vv ++錛涖銆銆銆銆銆銆 // 涓嬩竴涓煝閲?br>銆銆銆銆m -= 16錛?br>銆銆} } 鎺ㄨ崘鐨勪唬鐮?nbsp; typedef struct { 銆銆float x,y,z,w錛?br>} VERTEX錛?br>typedef struct { 銆銆float m[4][4]錛?br>} MATRIX錛?br>void XForm (float* res, const float* v, const float* m, int nNumVerts) { 銆銆int i錛?br>銆銆const VERTEX* vv = (VERTEX*)v錛?br>銆銆const MATRIX* mm = (MATRIX*)m錛?br>銆銆VERTEX* rr = (VERTEX*)res錛?br>銆銆for (i = 0錛?i <錛?nNumVerts錛?i++) 銆銆{ 銆銆銆銆rr->錛泋 = vv->錛泋 * mm->錛沵[0][0] + vv->錛泍 * mm->錛沵[0][1] 銆銆銆銆銆銆銆銆+ vv->錛泎 * mm->錛沵[0][2] + vv->錛泈 * mm->錛沵[0][3]錛?br>銆銆銆銆rr->錛泍 = vv->錛泋 * mm->錛沵[1][0] + vv->錛泍 * mm->錛沵[1][1] 銆銆銆銆銆銆銆銆+ vv->錛泎 * mm->錛沵[1][2] + vv->錛泈 * mm->錛沵[1][3]錛?br>銆銆銆銆rr->錛泎 = vv->錛泋 * mm->錛沵[2][0] + vv->錛泍 * mm->錛沵[2][1] 銆銆銆銆銆銆銆銆+ vv->錛泎 * mm->錛沵[2][2] + vv->錛泈 * mm->錛沵[2][3]錛?br>銆銆銆銆rr->錛泈 = vv->錛泋 * mm->錛沵[3][0] + vv->錛泍 * mm->錛沵[3][1] 銆銆銆銆銆銆銆銆+ vv->錛泎 * mm->錛沵[3][2] + vv->錛泈 * mm->錛沵[3][3]錛?br>銆銆} } 銆銆娉ㄦ剰: 婧愪唬鐮佺殑杞寲鏄笌緙栬瘧鍣ㄧ殑浠g爜鍙戠敓鍣ㄧ浉緇撳悎鐨勩備粠婧愪唬鐮佸眰嬈″緢闅炬帶鍒朵駭鐢熺殑鏈哄櫒鐮併備緷闈犵紪璇戝櫒鍜岀壒孌婄殑婧愪唬鐮侊紝鏈夊彲鑳芥寚閽堝瀷浠g爜緙栬瘧鎴愮殑鏈哄櫒鐮佹瘮鍚岀瓑鏉′歡涓嬬殑鏁扮粍鍨嬩唬鐮佽繍琛岄熷害鏇村揩銆傛槑鏅虹殑鍋氭硶鏄湪婧愪唬鐮佽漿鍖栧悗媯鏌ユц兘鏄惁鐪熸鎻愰珮浜嗭紝鍐嶉夋嫨浣跨敤鎸囬拡鍨嬭繕鏄暟緇勫瀷銆?nbsp; 6.鍏呭垎鍒嗚В灝忕殑寰幆 銆銆瑕佸厖鍒嗗埄鐢–PU鐨勬寚浠ょ紦瀛橈紝灝辮鍏呭垎鍒嗚В灝忕殑寰幆銆傜壒鍒槸褰撳驚鐜綋鏈韓寰堝皬鐨勬椂鍊欙紝鍒嗚В寰幆鍙互鎻愰珮鎬ц兘銆侭TW:寰堝緙栬瘧鍣ㄥ茍涓嶈兘鑷姩鍒嗚В寰幆銆?nbsp; 涓嶅ソ鐨勪唬鐮?鎺ㄨ崘鐨勪唬鐮?nbsp; // 3D杞寲錛氭妸鐭㈤噺 V 鍜?4x4 鐭╅樀 M 鐩鎬箻 for (i = 0錛?i <錛?4錛?i ++) { 銆銆r = 0錛?br>銆銆for (j = 0錛?j <錛?4錛?j ++) 銆銆{ 銆銆銆銆r += M[j]*V[j]錛?br>銆銆} } r[0] = M[0][0]*V[0] + M[1][0]*V[1] + M[2][0]*V[2] + M[3][0]*V[3]錛?br>r[1] = M[0][1]*V[0] + M[1][1]*V[1] + M[2][1]*V[2] + M[3][1]*V[3]錛?br>r[2] = M[0][2]*V[0] + M[1][2]*V[1] + M[2][2]*V[2] + M[3][2]*V[3]錛?br>r[3] = M[0][3]*V[0] + M[1][3]*V[1] + M[2][3]*V[2] + M[3][3]*v[3]錛?nbsp; 7.閬垮厤娌℃湁蹇呰鐨勮鍐欎緷璧?nbsp; 銆銆褰撴暟鎹繚瀛樺埌鍐呭瓨鏃跺瓨鍦ㄨ鍐欎緷璧栵紝鍗蟲暟鎹繀欏誨湪姝g‘鍐欏叆鍚庢墠鑳藉啀嬈¤鍙栥傝櫧鐒禔MD Athlon絳塁PU鏈夊姞閫熻鍐欎緷璧栧歡榪熺殑紜歡錛屽厑璁稿湪瑕佷繚瀛樼殑鏁版嵁琚啓鍏ュ唴瀛樺墠璇誨彇鍑烘潵錛屼絾鏄紝濡傛灉閬垮厤浜嗚鍐欎緷璧栧茍鎶婃暟鎹繚瀛樺湪鍐呴儴瀵勫瓨鍣ㄤ腑錛岄熷害浼氭洿蹇傚湪涓孌靛緢闀跨殑鍙堜簰鐩鎬緷璧栫殑浠g爜閾句腑錛岄伩鍏嶈鍐欎緷璧栨樉寰楀挨鍏墮噸瑕併傚鏋滆鍐欎緷璧栧彂鐢熷湪鎿嶄綔鏁扮粍鏃訛紝璁稿緙栬瘧鍣ㄤ笉鑳借嚜鍔ㄤ紭鍖栦唬鐮佷互閬垮厤璇誨啓渚濊禆銆傛墍浠ユ帹鑽愮▼搴忓憳鎵嬪姩鍘繪秷闄よ鍐欎緷璧栵紝涓句緥鏉ヨ錛屽紩榪涗竴涓彲浠ヤ繚瀛樺湪瀵勫瓨鍣ㄤ腑鐨勪復鏃跺彉閲忋傝繖鏍峰彲浠ユ湁寰堝ぇ鐨勬ц兘鎻愬崌銆備笅闈竴孌典唬鐮佹槸涓涓緥瀛愶細 涓嶅ソ鐨勪唬鐮?br>float x[VECLEN], y[VECLEN], z[VECLEN]錛?br>...... for (unsigned int k = 1錛?k <錛?VECLEN錛?k ++) { 銆銆x[k] = x[k-1] + y[k]錛?br>} for (k = 1錛?k <錛?VECLEN錛?k++) { 銆銆x[k] = z[k] * (y[k] - x[k-1])錛?br>} 銆銆 鎺ㄨ崘鐨勪唬鐮?nbsp; float x[VECLEN], y[VECLEN], z[VECLEN]錛?br>...... float t(x[0])錛?br>for (unsigned int k = 1錛?k <錛?VECLEN錛?k ++) { 銆銆t = t + y[k]錛?br>銆銆x[k] = t錛?br>} t = x[0]錛?br>for (k = 1錛?k <錛?VECLEN錛?k ++) { 銆銆t = z[k] * (y[k] - t)錛?br>銆銆x[k] = t錛?br>} 8.Switch 鐨勭敤娉?nbsp; 銆銆Switch 鍙兘杞寲鎴愬縐嶄笉鍚岀畻娉曠殑浠g爜銆傚叾涓渶甯歌鐨勬槸璺寵漿琛ㄥ拰姣旇緝閾?鏍戙傛帹鑽愬case鐨勫間緷鐓у彂鐢熺殑鍙兘鎬ц繘琛屾帓搴忥紝鎶婃渶鏈夊彲鑳界殑鏀懼湪絎竴涓紝褰搒witch鐢ㄦ瘮杈冮摼鐨勬柟寮忚漿鍖栨椂錛岃繖鏍峰彲浠ユ彁楂樻ц兘銆傛澶栵紝鍦╟ase涓帹鑽愪嬌鐢ㄥ皬鐨勮繛緇殑鏁存暟錛屽洜涓哄湪榪欑鎯呭喌涓嬶紝鎵鏈夌殑緙栬瘧鍣ㄩ兘鍙互鎶妔witch 杞寲鎴愯煩杞〃銆?nbsp; 涓嶅ソ鐨勪唬鐮?br>int days_in_month, short_months, normal_months, long_months錛?br>...... switch (days_in_month) { 銆銆case 28: 銆銆case 29: 銆銆銆銆short_months ++錛?br>銆銆銆銆break錛?br>銆銆case 30: 銆銆銆銆normal_months ++錛?br>銆銆銆銆break錛?br>銆銆case 31: 銆銆銆銆long_months ++錛?br>銆銆銆銆break錛?br>銆銆default: 銆銆銆銆cout <錛?lt;錛?"錛沵onth has fewer than 28 or more than 31 days"錛?<錛?lt;錛?endl錛?br>銆銆銆銆break錛?br>} 鎺ㄨ崘鐨勪唬鐮?nbsp; int days_in_month, short_months, normal_months, long_months錛?br>...... switch (days_in_month) { 銆銆case 31: 銆銆銆銆long_months ++錛?br>銆銆銆銆break錛?br>銆銆case 30: 銆銆銆銆normal_months ++錛?br>銆銆銆銆break錛?br>銆銆case 28: 銆銆case 29: 銆銆銆銆short_months ++錛?nbsp; 銆銆銆銆break錛?br>銆銆default: 銆銆銆銆cout <錛?lt;錛?"錛沵onth has fewer than 28 or more than 31 days"錛?<錛?lt;錛?endl錛?br>銆銆銆銆break錛?br>} 9.鎵鏈夊嚱鏁伴兘搴旇鏈夊師鍨嬪畾涔?nbsp; 銆銆涓鑸潵璇達紝鎵鏈夊嚱鏁伴兘搴旇鏈夊師鍨嬪畾涔夈傚師鍨嬪畾涔夊彲浠ヤ紶杈劇粰緙栬瘧鍣ㄦ洿澶氱殑鍙兘鐢ㄤ簬浼樺寲鐨勪俊鎭?nbsp; 銆銆灝藉彲鑳戒嬌鐢ㄥ父閲?const)銆侰++ 鏍囧噯瑙勫畾錛屽鏋滀竴涓猚onst澹版槑鐨勫璞$殑鍦板潃涓嶈鑾峰彇錛屽厑璁哥紪璇戝櫒涓嶅瀹冨垎閰嶅偍瀛樼┖闂淬傝繖鏍峰彲浠ヤ嬌浠g爜鏇存湁鏁堢巼錛岃屼笖鍙互鐢熸垚鏇村ソ鐨勪唬鐮併?nbsp; 10.鎻愬崌寰幆鐨勬ц兘 銆銆瑕佹彁鍗囧驚鐜殑鎬ц兘錛屽噺灝戝浣欑殑甯擱噺璁$畻闈炲父鏈夌敤錛堟瘮濡傦紝涓嶉殢寰幆鍙樺寲鐨勮綆楋級銆?nbsp; 銆銆涓嶅ソ鐨勪唬鐮?鍦╢or()涓寘鍚笉鍙樼殑if()) 鎺ㄨ崘鐨勪唬鐮?nbsp; for( i ... ) { 銆銆if( CONSTANT0 ) 銆銆{ 銆銆銆銆DoWork0( i )錛?// 鍋囪榪欓噷涓嶆敼鍙楥ONSTANT0鐨勫?br>銆銆} 銆銆else 銆銆{ 銆銆銆銆DoWork1( i )錛?// 鍋囪榪欓噷涓嶆敼鍙楥ONSTANT0鐨勫?br>銆銆} } if( CONSTANT0 ) { 銆銆for( i ... ) 銆銆{ 銆銆銆銆DoWork0( i )錛?br>銆銆} } else { 銆銆for( i ... ) 銆銆{ 銆銆銆銆DoWork1( i )錛?br>銆銆} } 銆銆濡傛灉宸茬粡鐭ラ亾if()鐨勫鹼紝榪欐牱鍙互閬垮厤閲嶅璁$畻銆傝櫧鐒朵笉濂界殑浠g爜涓殑鍒嗘敮鍙互綆鍗曞湴棰勬祴錛屼絾鏄敱浜庢帹鑽愮殑浠g爜鍦ㄨ繘鍏ュ驚鐜墠鍒嗘敮宸茬粡紜畾錛屽氨鍙互鍑忓皯瀵瑰垎鏀嫻嬬殑渚濊禆銆?銆銆鎶婃湰鍦板嚱鏁板0鏄庝負闈欐佺殑(static) 銆銆濡傛灉涓涓嚱鏁板湪瀹炵幇瀹冪殑鏂囦歡澶栨湭琚嬌鐢ㄧ殑璇濓紝鎶婂畠澹版槑涓洪潤鎬佺殑(static)浠ュ己鍒朵嬌鐢ㄥ唴閮ㄨ繛鎺ャ傚惁鍒欙紝榛樿鐨勬儏鍐典笅浼氭妸鍑芥暟瀹氫箟涓哄閮ㄨ繛鎺ャ傝繖鏍峰彲鑳戒細褰卞搷鏌愪簺緙栬瘧鍣ㄧ殑浼樺寲鈥斺旀瘮濡傦紝鑷姩鍐呰仈銆?nbsp; 11.鑰冭檻鍔ㄦ佸唴瀛樺垎閰?nbsp; 銆銆鍔ㄦ佸唴瀛樺垎閰嶏紙C++涓殑"錛沶ew"錛涳級鍙兘鎬繪槸涓洪暱鐨勫熀鏈被鍨嬶紙鍥涘瓧瀵歸綈錛夎繑鍥炰竴涓凡緇忓榻愮殑鎸囬拡銆備絾鏄鏋滀笉鑳戒繚璇佸榻愶紝浣跨敤浠ヤ笅浠g爜鏉ュ疄鐜板洓瀛楀榻愩傝繖孌典唬鐮佸亣璁炬寚閽堝彲浠ユ槧灝勫埌 long 鍨嬨?nbsp; 銆銆渚嬪瓙 銆銆double* p = (double*)new BYTE[sizeof(double) * number_of_doubles+7L]錛?br> double* np = (double*)((long(p) + 7L) &錛?–8L)錛?nbsp; 銆銆鐜板湪錛屼綘鍙互浣跨敤 np 浠f浛 p 鏉ヨ闂暟鎹傛敞鎰忥細閲婃斁鍌ㄥ瓨絀洪棿鏃朵粛鐒跺簲璇ョ敤delete p銆?nbsp; 12.浣跨敤鏄懼紡鐨勫茍琛屼唬鐮?nbsp; 銆銆灝藉彲鑳芥妸闀跨殑鏈変緷璧栫殑浠g爜閾懼垎瑙f垚鍑犱釜鍙互鍦ㄦ祦姘寸嚎鎵ц鍗曞厓涓茍琛屾墽琛岀殑娌℃湁渚濊禆鐨勪唬鐮侀摼銆傚洜涓烘誕鐐規(guī)搷浣滄湁寰堥暱鐨勬綔浼忔湡錛屾墍浠ヤ笉綆″畠琚槧灝勬垚 x87 鎴?3DNow! 鎸囦護錛岃繖閮藉緢閲嶈銆傚緢澶氶珮綰ц璦錛屽寘鎷珻++錛屽茍涓嶅浜х敓鐨勬誕鐐硅〃杈懼紡閲嶆柊鎺掑簭錛屽洜涓洪偅鏄竴涓浉褰撳鏉傜殑榪囩▼銆傞渶瑕佹敞鎰忕殑鏄紝閲嶆帓搴忕殑浠g爜鍜屽師鏉ョ殑浠g爜鍦ㄤ唬鏁頒笂涓鑷村茍涓嶇瓑浠蜂簬璁$畻緇撴灉涓鑷達紝鍥犱負嫻偣鎿嶄綔緙轟箯綺劇‘搴︺傚湪涓浜涙儏鍐典笅錛岃繖浜涗紭鍖栧彲鑳藉鑷存剰鏂欎箣澶栫殑緇撴灉銆傚垢榪愮殑鏄紝鍦ㄥぇ閮ㄥ垎鎯呭喌涓嬶紝鏈鍚庣粨鏋滃彲鑳藉彧鏈夋渶涓嶉噸瑕佺殑浣嶏紙鍗蟲渶浣庝綅錛夋槸閿欒鐨勩?nbsp; 銆銆涓嶅ソ鐨勪唬鐮?br>double a[100], sum錛?br>int i錛?br>sum = 0.0f錛?br>for (i=0錛?i<錛?00錛?i++) 銆銆sum += a錛?nbsp; 鎺ㄨ崘鐨勪唬鐮?nbsp; double a[100], sum1, sum2, sum3, sum4, sum錛?br>int i錛?br>sum1 = sum2 = sum3 = sum4 = 0.0錛?br>for (i = 0錛?i <錛?100錛?i += 4) { 銆銆sum1 += a錛?br>銆銆sum2 += a[i+1]錛?br>銆銆sum3 += a[i+2]錛?br>銆銆sum4 += a[i+3]錛?br>} sum = (sum4+sum3)+(sum1+sum2)錛?nbsp; 銆銆瑕佹敞鎰忕殑鏄細浣跨敤4 璺垎瑙f槸鍥犱負榪欐牱浣跨敤浜?闃舵嫻佹按綰挎誕鐐瑰姞娉曪紝嫻偣鍔犳硶鐨勬瘡涓涓樁孌靛崰鐢ㄤ竴涓椂閽熷懆鏈燂紝淇濊瘉浜嗘渶澶х殑璧勬簮鍒╃敤鐜囥?nbsp; 13.鎻愬嚭鍏叡瀛愯〃杈懼紡 銆銆鍦ㄦ煇浜涙儏鍐典笅錛孋++緙栬瘧鍣ㄤ笉鑳戒粠嫻偣琛ㄨ揪寮忎腑鎻愬嚭鍏叡鐨勫瓙琛ㄨ揪寮忥紝鍥犱負榪欐剰鍛崇潃鐩稿綋浜庡琛ㄨ揪寮忛噸鏂版帓搴忋傞渶瑕佺壒鍒寚鍑虹殑鏄紝緙栬瘧鍣ㄥ湪鎻愬彇鍏叡瀛愯〃杈懼紡鍓嶄笉鑳芥寜鐓т唬鏁扮殑絳変環(huán)鍏崇郴閲嶆柊瀹夋帓琛ㄨ揪寮忋傝繖鏃訛紝紼嬪簭鍛樿鎵嬪姩鍦版彁鍑哄叕鍏辯殑瀛愯〃杈懼紡錛堝湪VC.net閲屾湁涓欏?#8220;鍏ㄥ眬浼樺寲”閫夐」鍙互瀹屾垚姝ゅ伐浣滐紝浣嗘晥鏋滃氨涓嶅緱鑰岀煡浜嗭級銆?nbsp; 鎺ㄨ崘鐨勪唬鐮?nbsp; float a, b, c, d, e, f錛?br>... e = b * c / d錛?br>f = b / d * a錛?br>float a, b, c, d, e, f錛?br>... const float t(b / d)錛?br>e = c * t錛?br>f = a * t錛?nbsp; 鎺ㄨ崘鐨勪唬鐮?nbsp; float a, b, c, e, f錛?br>... e = a / c錛?br>f = b / c錛?br>float a, b, c, e, f錛?br>... const float t(1.0f / c)錛?br>e = a * t錛?br>f = b * t錛?nbsp; 14.緇撴瀯浣撴垚鍛樼殑甯冨眬 銆銆寰堝緙栬瘧鍣ㄦ湁“浣跨粨鏋勪綋瀛楋紝鍙屽瓧鎴栧洓瀛楀榻?#8221;鐨勯夐」銆備絾鏄紝榪樻槸闇瑕佹敼鍠勭粨鏋勪綋鎴愬憳鐨勫榻愶紝鏈変簺緙栬瘧鍣ㄥ彲鑳藉垎閰嶇粰緇撴瀯浣撴垚鍛樼┖闂寸殑欏哄簭涓庝粬浠0鏄庣殑涓嶅悓銆備絾鏄紝鏈変簺緙栬瘧鍣ㄥ茍涓嶆彁渚涜繖浜涘姛鑳斤紝鎴栬呮晥鏋滀笉濂姐傛墍浠ワ紝瑕佸湪浠樺嚭鏈灝戜唬浠風殑鎯呭喌涓嬪疄鐜版渶濂界殑緇撴瀯浣撳拰緇撴瀯浣撴垚鍛樺榻愶紝寤鴻閲囧彇榪欎簺鏂規(guī)硶錛?nbsp; 銆銆A鎸夌被鍨嬮暱搴︽帓搴?nbsp; 銆銆鎶婄粨鏋勪綋鐨勬垚鍛樻寜鐓у畠浠殑綾誨瀷闀垮害鎺掑簭錛屽0鏄庢垚鍛樻椂鎶婇暱鐨勭被鍨嬫斁鍦ㄧ煭鐨勫墠闈€?nbsp; 銆銆鎶婄粨鏋勪綋濉厖鎴愭渶闀跨被鍨嬮暱搴︾殑鏁村嶆暟 銆銆鎶婄粨鏋勪綋濉厖鎴愭渶闀跨被鍨嬮暱搴︾殑鏁村嶆暟銆傜収榪欐牱錛屽鏋滅粨鏋勪綋鐨勭涓涓垚鍛樺榻愪簡錛屾墍鏈夋暣涓粨鏋勪綋鑷劧涔熷氨瀵歸綈浜嗐備笅闈㈢殑渚嬪瓙婕旂ず浜嗗浣曞緇撴瀯浣撴垚鍛樿繘琛岄噸鏂版帓搴忥細 銆銆涓嶅ソ鐨勪唬鐮侊紝鏅氶『搴?鎺ㄨ崘鐨勪唬鐮侊紝鏂扮殑欏哄簭騫舵墜鍔ㄥ~鍏呬簡鍑犱釜瀛楄妭 struct { 銆銆char a[5]錛?br>銆銆long k錛?br>銆銆double x錛?br>} baz錛?br>struct { 銆銆double x錛?br>銆銆long k錛?br>銆銆char a[5]錛?br>char pad[7]錛?br>} baz錛?/p>
銆銆榪欎釜瑙勫垯鍚屾牱閫傜敤浜庣被鐨勬垚鍛樼殑甯冨眬銆?nbsp; 銆銆B鎸夋暟鎹被鍨嬬殑闀垮害鎺掑簭鏈湴鍙橀噺 銆銆褰撶紪璇戝櫒鍒嗛厤緇欐湰鍦板彉閲忕┖闂存椂錛屽畠浠殑欏哄簭鍜屽畠浠湪婧愪唬鐮佷腑澹版槑鐨勯『搴忎竴鏍鳳紝鍜屼笂涓鏉¤鍒欎竴鏍鳳紝搴旇鎶婇暱鐨勫彉閲忔斁鍦ㄧ煭鐨勫彉閲忓墠闈€傚鏋滅涓涓彉閲忓榻愪簡錛屽叾瀹冨彉閲忓氨浼氳繛緇殑瀛樻斁錛岃屼笖涓嶇敤濉厖瀛楄妭鑷劧灝變細瀵歸綈銆傛湁浜涚紪璇戝櫒鍦ㄥ垎閰嶅彉閲忔椂涓嶄細鑷姩鏀瑰彉鍙橀噺欏哄簭錛屾湁浜涚紪璇戝櫒涓嶈兘浜х敓4瀛楄妭瀵歸綈鐨勬爤錛屾墍浠?瀛楄妭鍙兘涓嶅榻愩備笅闈㈣繖涓緥瀛愭紨紺轟簡鏈湴鍙橀噺澹版槑鐨勯噸鏂版帓搴忥細 銆銆涓嶅ソ鐨勪唬鐮侊紝鏅氶『搴?鎺ㄨ崘鐨勪唬鐮侊紝鏀硅繘鐨勯『搴?nbsp; short ga, gu, gi錛?br>long foo, bar錛?br>double x, y, z[3]錛?br>char a, b錛?br>float baz錛?br>double z[3]錛?br>double x, y錛?br>long foo, bar錛?br>float baz錛?br>short ga, gu, gi錛?nbsp; 14.閬垮厤涓嶅繀瑕佺殑鏁存暟闄ゆ硶 銆銆鏁存暟闄ゆ硶鏄暣鏁拌繍綆椾腑鏈鎱㈢殑錛屾墍浠ュ簲璇ュ敖鍙兘閬垮厤銆備竴縐嶅彲鑳藉噺灝戞暣鏁伴櫎娉曠殑鍦版柟鏄繛闄わ紝榪欓噷闄ゆ硶鍙互鐢變箻娉曚唬鏇褲傝繖涓浛鎹㈢殑鍓綔鐢ㄦ槸鏈夊彲鑳藉湪綆椾箻縐椂浼氭孩鍑猴紝鎵浠ュ彧鑳藉湪涓瀹氳寖鍥寸殑闄ゆ硶涓嬌鐢ㄣ?nbsp; 銆銆涓嶅ソ鐨勪唬鐮?鎺ㄨ崘鐨勪唬鐮?nbsp; int i, j, k, m錛?br>m = i / j / k錛?br>int i, j, k, m錛?br>m = i / (j * k)錛?nbsp; 15.鎶婇綣佷嬌鐢ㄧ殑鎸囬拡鍨嬪弬鏁版嫹璐濆埌鏈湴鍙橀噺 銆銆閬垮厤鍦ㄥ嚱鏁頒腑棰戠箒浣跨敤鎸囬拡鍨嬪弬鏁版寚鍚戠殑鍊箋傚洜涓虹紪璇戝櫒涓嶇煡閬撴寚閽堜箣闂存槸鍚﹀瓨鍦ㄥ啿紿侊紝鎵浠ユ寚閽堝瀷鍙傛暟寰寰涓嶈兘琚紪璇戝櫒浼樺寲銆傝繖鏍鋒槸鏁版嵁涓嶈兘琚瓨鏀懼湪瀵勫瓨鍣ㄤ腑錛岃屼笖鏄庢樉鍦板崰鐢ㄤ簡鍐呭瓨甯﹀銆傛敞鎰忥紝寰堝緙栬瘧鍣ㄦ湁“鍋囪涓嶅啿紿?#8221;浼樺寲寮鍏籌紙鍦╒C閲屽繀欏繪墜鍔ㄦ坊鍔犵紪璇戝櫒鍛戒護琛?Oa鎴?Ow錛夛紝榪欏厑璁哥紪璇戝櫒鍋囪涓や釜涓嶅悓鐨勬寚閽堟繪槸鏈変笉鍚岀殑鍐呭錛岃繖鏍峰氨涓嶇敤鎶婃寚閽堝瀷鍙傛暟淇濆瓨鍒版湰鍦板彉閲忋傚惁鍒欙紝璇峰湪鍑芥暟涓寮濮嬫妸鎸囬拡鎸囧悜鐨勬暟鎹繚瀛樺埌鏈湴鍙橀噺銆傚鏋滈渶瑕佺殑璇濓紝鍦ㄥ嚱鏁扮粨鏉熷墠鎷瘋礉鍥炲幓銆?銆銆 涓嶅ソ鐨勪唬鐮?nbsp; // 鍋囪 q != r void isqrt(unsigned long a, unsigned long* q, unsigned long* r) { 銆銆*q = a錛?br>銆銆if (a >錛?0) 銆銆{ 銆銆銆銆while (*q >錛?(*r = a / *q)) 銆銆銆銆{ 銆銆銆銆銆銆*q = (*q + *r) >錛?gt;錛?1錛?br>銆銆銆銆} 銆銆} 銆銆*r = a - *q * *q錛?br>} 鎺ㄨ崘鐨勪唬鐮?br>// 鍋囪 q != r void isqrt(unsigned long a, unsigned long* q, unsigned long* r) { 銆銆unsigned long qq, rr錛?br>銆銆qq = a錛?br>銆銆if (a >錛?0) 銆銆{ 銆銆銆銆while (qq >錛?(rr = a / qq)) 銆銆銆銆{ 銆銆銆銆銆銆qq = (qq + rr) >錛?gt;錛?1錛?br>銆銆銆銆} 銆銆} 銆銆rr = a - qq * qq錛?br>銆銆*q = qq錛?br>銆銆*r = rr錛?br>} 16.璧嬪間笌鍒濆鍖?br>鍏堢湅鐪嬩互涓嬩唬鐮侊細 class CInt { 銆銆int m_i錛?nbsp; public: 銆銆CInt(int a = 0):m_i(a) { cout <錛?lt;錛?"錛汣Int"錛?<錛?lt;錛?endl錛?} 銆銆~CInt() { cout <錛?lt;錛?"錛泘CInt"錛?<錛?lt;錛?endl錛?} 銆銆CInt operator + (const CInt&錛?a) { return CInt(m_i + a.GetInt())錛?} 銆銆void SetInt(const int i)銆銆{ m_i = i錛?} 銆銆int GetInt() const銆銆銆銆銆銆{ return m_i錛?} }錛?br> 涓嶅ソ鐨勪唬鐮?nbsp; void main() { 銆銆CInt a, b, c錛?br>銆銆a.SetInt(1)錛?br>銆銆b.SetInt(2)錛?br>銆銆c = a + b錛?br>} 鎺ㄨ崘鐨勪唬鐮?br>void main() { 銆銆CInt a(1), b(2)錛?br>銆銆CInt c(a + b)錛?br>} 銆銆榪欎袱孌典唬鐮佹墍浣滅殑浜嬮兘涓鏍鳳紝浣嗛偅涓涓洿濂藉憿錛熺湅鐪嬭緭鍑虹粨鏋滃氨浼氬彂鐜幫紝涓嶅ソ鐨勪唬鐮佽緭鍑轟簡鍥涗釜"錛汣Int"錛涘拰鍥涗釜"錛泘CInt"錛涳紝鑰屾帹鑽愮殑浠g爜鍙緭鍑轟笁涓備篃灝辨槸璇達紝絎簩涓緥瀛愭瘮絎竴涓緥瀛愬皯鐢熸垚涓嬈′復鏃跺璞°俉hy? 璇鋒敞鎰忥紝絎竴涓腑鐨刢鐢ㄧ殑鏄厛澹版槑鍐嶈祴鍊肩殑鏂規(guī)硶錛岀浜屼釜鐢ㄧ殑鏄垵濮嬪寲鐨勬柟娉曪紝瀹冧滑鏈夋湰璐ㄧ殑鍖哄埆銆傜涓涓緥瀛愮殑"錛沜 = a + b"錛涘厛鐢熸垚涓涓復鏃跺璞$敤鏉ヤ繚瀛榓 + b鐨勫鹼紝鍐嶆妸璇ヤ復鏃跺璞$敤浣嶆嫹璐濈殑鏂規(guī)硶緇檆璧嬪鹼紝鐒跺悗涓存椂瀵硅薄琚攢姣併傝繖涓復鏃跺璞″氨鏄偅涓鍑烘潵鐨勫璞°傜浜屼釜渚嬪瓙鐩存帴鐢ㄦ嫹璐濇瀯閫犲嚱鏁扮殑鏂規(guī)硶瀵筩鍒濆鍖栵紝涓嶄駭鐢熶復鏃跺璞°傛墍浠ワ紝灝介噺鍦ㄩ渶瑕佷嬌鐢ㄤ竴涓璞℃椂鎵嶅0鏄庯紝騫剁敤鍒濆鍖栫殑鏂規(guī)硶璧嬪垵鍊箋?nbsp; 17.灝介噺浣跨敤鎴愬憳鍒濆鍖栧垪琛?nbsp; 銆銆鍦ㄥ垵濮嬪寲綾葷殑鎴愬憳鏃訛紝灝介噺浣跨敤鎴愬憳鍒濆鍖栧垪琛ㄨ屼笉鏄紶緇熺殑璧嬪兼柟寮忋?nbsp; 銆銆涓嶅ソ鐨勪唬鐮?nbsp; class CMyClass { 銆銆string strName錛?nbsp; public: 銆銆CMyClass(const string&錛?str)錛?br>}錛?nbsp; CMyClass::CMyClass(const string&錛?str) { 銆銆strName = str錛?br>} 鎺ㄨ崘鐨勪唬鐮?br>class CMyClass { 銆銆string strName錛?br>銆銆int i錛?br>public: 銆銆CMyClass(const string&錛?str)錛?br>}錛?nbsp; CMyClass::CMyClass(const string&錛泂tr) :strName(str) {
} 銆銆涓嶅ソ鐨勪緥瀛愮敤鐨勬槸璧嬪肩殑鏂瑰紡銆傝繖鏍鳳紝strName浼氬厛琚緩绔嬶紙璋冪敤浜唖tring鐨勯粯璁ゆ瀯閫犲嚱鏁幫級錛屽啀鐢卞弬鏁皊tr璧嬪箋傝屾帹鑽愮殑渚嬪瓙鐢ㄧ殑鏄垚鍛樺垵濮嬪寲鍒楄〃錛宻trName鐩存帴鏋勯犱負str錛屽皯璋冪敤涓嬈¢粯璁ゆ瀯閫犲嚱鏁幫紝榪樺皯浜嗕竴浜涘畨鍏ㄩ殣鎮(zhèn)c倆huan
]]> C 楂樻晥緙栫▼蹇犲憡錛堣漿錛?/title> http://m.shnenglu.com/cc/archive/2010/05/24/116212.html鍖楅涔嬬007 鍖楅涔嬬007 Mon, 24 May 2010 05:09:00 GMT http://m.shnenglu.com/cc/archive/2010/05/24/116212.html http://m.shnenglu.com/cc/comments/116212.html http://m.shnenglu.com/cc/archive/2010/05/24/116212.html#Feedback 1 http://m.shnenglu.com/cc/comments/commentRss/116212.html http://m.shnenglu.com/cc/services/trackbacks/116212.html 涓銆?include “filename.h”鍜?include <filename.h>鐨勫尯鍒?/span> #include “filename.h”鏄寚緙栬瘧鍣ㄥ皢浠庡綋鍓嶅伐浣滅洰褰曚笂寮濮嬫煡鎵炬鏂囦歡 #include <filename.h>鏄寚緙栬瘧鍣ㄥ皢浠庢爣鍑嗗簱鐩綍涓紑濮嬫煡鎵炬鏂囦歡浜屻佸ご鏂囦歡鐨勪綔鐢?/span> 鍔犲己瀹夊叏媯嫻?br>閫氳繃澶存枃浠跺彲鑳芥柟渚垮湴璋冪敤搴撳姛鑳斤紝鑰屼笉蹇呭叧蹇冨叾瀹炵幇鏂瑰紡涓夈? , &淇グ絎︾殑浣嶇疆 int *i,j; // better for read i = new int(0); j = 0; int *&y = i; // pointer's reference 瀵逛簬*鍜?amp;淇グ絎︼紝涓轟簡閬垮厤璇В錛屾渶濂藉皢淇グ絎︾揣闈犲彉閲忓悕鍥涖乮f璇彞 涓嶈灝嗗竷?yōu)當鍙橀噺涓庝恢M綍鍊艱繘琛屾瘮杈冿紝閭d細寰堝鏄撳嚭閿欑殑銆?br>鏁村艦鍙橀噺蹇呴』瑕佹湁綾誨瀷鐩稿悓鐨勫艱繘琛屾瘮杈?br>嫻偣鍙橀噺鏈濂藉皯姣旂浉絳夛紝鍙互閫氳繃姹傚樊涓庤緝?yōu)畯鐨勬暟姣旇?br>鎸囬拡鍙橀噺瑕佸拰NULL榪涜姣旇緝錛屼笉瑕佸拰甯冨皵鍨嬪拰鏁村艦姣旇緝浜斻乧onst鍜?define鐨勬瘮杈?/span> const鏈夋暟鎹被鍨嬶紝#define娌℃湁鏁版嵁綾誨瀷 涓埆緙栬瘧鍣ㄤ腑const鍙互榪涜璋冭瘯錛?define涓嶅彲浠ヨ繘琛岃皟璇?br>鍦ㄧ被涓畾涔夊父閲忔湁涓ょ鏂瑰紡 1銆?鍦ㄧ被鍦ㄥ0鏄庡父閲忥紝浣嗕笉璧嬪鹼紝鍦ㄦ瀯閫犲嚱鏁板垵濮嬪寲琛ㄤ腑榪涜璧嬪鹼紱錛堝父閲忓拰寮曠敤綾誨瀷鐨勬垚鍛樺彉閲忓繀欏婚氳繃鍒濆鍖栧垪琛ㄦ潵鍒濆鍖栬祴鍊鹼級 2銆?鐢ㄦ灇涓句唬鏇縞onst甯擱噺銆?br>鍏丆++鍑芥暟涓肩殑浼犻掓柟寮?/span> 鏈変笁縐嶆柟寮忥細鍊間紶閫?Pass by value)銆佹寚閽堜紶閫?Pass by pointer)銆佸紩鐢ㄤ紶閫?Pass by reference) void fun(char c) //pass by value void fun(char *str) //pass by pointer void fun(char &str) //pass by reference 濡傛灉杈撳叆鍙傛暟鏄互鍊間紶閫掔殑璇濓紝鏈濂戒嬌鐢ㄥ紩鐢ㄤ紶閫掍唬鏇匡紝鍥犱負寮曠敤浼犻掔渷鍘諱簡涓存椂瀵硅薄鐨勬瀯閫犲拰鏋愭瀯 鍑芥暟鐨勮繑鍥炵被鍨嬩笉鑳界渷鐣ワ紝灝辯畻娌℃湁涔熻鍔犱釜void涓冦佸嚱鏁頒綋涓殑鎸囬拡鎴栧紩鐢ㄥ父閲忎笉鑳借榪斿洖 Char *func(void) { char str[]=”Hello Word”; //榪欎釜鏄笉鑳借榪斿洖鐨勶紝鍥犱負str鏄釜鎸囧畾鍙橀噺錛屼笉鏄竴鑸殑鍊鹼紝鍑芥暟緇撴潫鍚庝細琚敞閿鎺?br> return str; }
鍑芥暟浣撳唴鐨勬寚閽堝彉閲忓茍涓嶄細闅忕潃鍑芥暟鐨勬秷浜¤岃嚜鍔ㄩ噴鏀?br>鍏佷竴涓唴瀛樻嫹璐濆嚱鏁扮殑瀹炵幇浣?/span> void *memcpy(void *pvTo,const void *pvFrom,size_t size) { assert((pvTo!=NULL)&&(pvFrom!=NULL)); byte *pbTo=(byte*)pvTo; //闃叉鍦板潃琚敼鍙?br> byte *pbFrom=(byte*)pvFrom; while (size-- >0) pbTo++ = pbForm++; return pvTo; }
涔?jié)銆佸唴瀛樼殑鍒嗛厤鏂瑰紡 鍒嗛厤鏂瑰紡鏈変笁縐嶏紝璇瘋浣忥紝璇翠笉瀹氶偅澶╁幓闈㈣瘯鐨勬椂鍊欏氨浼氭湁浜洪棶浣犺繖闂 1銆?闈欐佸瓨鍌ㄥ尯錛屾槸鍦ㄧ▼搴忕紪璇戞椂灝卞凡緇忓垎閰嶅ソ鐨勶紝鍦ㄦ暣涓繍琛屾湡闂撮兘瀛樺湪錛屽鍏ㄥ眬鍙橀噺銆佸父閲忋傦紙紼嬪簭緙栬瘧鍚庤繍琛屾椂鍖呭惈code鍜宒ata涓ら儴鍒嗭紝鍏朵腑data鍗充負闈欐佸瓨鍌ㄥ尯鍒嗛厤錛岀▼搴忎竴寮濮嬭繍琛屼究鍒嗛厤鏁翠釜data鐨勪笢涓滐級 2銆?鏍堜笂鍒嗛厤錛屽嚱鏁板唴鐨勫眬閮ㄥ彉閲忓氨鏄粠榪欏垎閰嶇殑錛屼絾鍒嗛厤鐨勫唴瀛樺鏄撴湁闄愩?br>3銆?鍫嗕笂鍒嗛厤錛屼篃縐板姩鎬佸垎閰嶏紝濡傛垜浠敤new,malloc鍒嗛厤鍐呭瓨錛岀敤delete,free鏉ラ噴鏀劇殑鍐呭瓨銆?br>鍗併佸唴瀛樺垎閰嶇殑娉ㄦ剰浜嬮」 鐢╪ew鎴杕alloc鍒嗛厤鍐呭瓨鏃訛紝蹇呴』瑕佸姝ゆ寚閽堣祴鍒濆箋?br>鐢╠elete 鎴杅ree閲婃斁鍐呭瓨鍚庯紝蹇呴』瑕佸皢鎸囬拡鎸囧悜NULL 涓嶈兘淇敼鎸囧悜甯擱噺鐨勬寚閽堟暟鎹?br>鍗佷竴銆佸唴瀹瑰鍒朵笌姣旇緝 //鏁扮粍…… char a[]=”Hello Word!”; char b[10]; strcpy(b,a); if (strcmp(a,b)==0) {}
//鎸囬拡…… char a[]=”Hello Word!”; char *p; p=new char[strlen(a)+1]; strcpy(p,a); if (strcmp(p,a)==0) {}
鍗佷簩銆乻izeof鐨勯棶棰?/span> 璁頒綇涓鐐癸紝C++鏃犳硶鐭ラ亾鎸囬拡鎵鎸囧璞$殑澶у皬錛屾寚閽堢殑澶у皬姘歌繙涓?瀛楄妭char a[]=”Hello World!” char *p=a; count<<sizeof(a)<<end; //12瀛楄妭 count<<sizeof(p)<<endl; //4瀛楄妭
鑰屼笖錛屽湪鍑芥暟涓紝鏁扮粍鍙傛暟閫鍖栦負鎸囬拡錛屾墍浠ヤ笅闈㈢殑鍐呭姘歌繙杈撳嚭涓?void fun(char a[1000]) { count<<sizeof(a)<<endl; //杈撳嚭4鑰屼笉鏄?000 }
鍗佷笁銆佸叧浜庢寚閽?/span> 1銆?鎸囬拡鍒涘緩鏃跺繀欏昏鍒濆鍖?br>2銆?鎸囬拡鍦╢ree 鎴杁elete鍚庡繀欏葷疆涓篘ULL 3銆?鎸囬拡鐨勯暱搴﹂兘涓?瀛楄妭 4銆侀噴鏀懼唴瀛樻椂錛屽鏋滄槸鏁扮粍鎸囬拡錛屽繀欏昏閲婃斁鎺夋墍鏈夌殑鍐呭瓨錛屽char *p=new char[100]; strcpy(p,”Hello World”); delete []p; //娉ㄦ剰鍓嶉潰鐨勶薊錛藉彿 p=NULL;
5銆佹暟緇勬寚閽堢殑鍐呭涓嶈兘瓚呰繃鏁扮粍鎸囬拡鐨勬渶澶у鏄撱?br>濡?char *p=new char[5]; strcpy(p,”Hello World”); //鎶ラ敊 鐩爣瀹規(guī)槗涓嶅澶?br>delete []p; //娉ㄦ剰鍓嶉潰鐨勶薊錛藉彿 p=NULL;
鍗佸洓銆佸叧浜巑alloc/free 鍜宯ew /delete malloc/free 鏄疌/C+鐨勫唴瀛樺垎閰嶇錛宯ew /delete鏄疌++鐨勫唴瀛樺垎閰嶇銆?br>娉ㄦ剰錛歮alloc/free鏄簱鍑芥暟錛宯ew/delete鏄繍綆楃 malloc/free涓嶈兘鎵ц鏋勯犲嚱鏁頒笌鏋愭瀯鍑芥暟錛岃宯ew/delete鍙互 new/delete涓嶈兘鍦–涓婅繍琛岋紝鎵浠alloc/free涓嶈兘琚窐姹?br>涓よ呴兘蹇呴』瑕佹垚瀵逛嬌鐢?br>C++涓彲浠ヤ嬌鐢╛set_new_hander鍑芥暟鏉ュ畾涔夊唴瀛樺垎閰嶅紓甯哥殑澶勭悊鍗佷簲銆侊跡++鐨勭壒鎬?/span> 錛?+鏂板鍔犳湁閲嶈澆(overload)錛屽唴鑱旓紙inline錛夛紝Const錛孷irtual鍥涚鏈哄埗 閲嶈澆鍜屽唴鑱旓細鍗沖彲鐢ㄤ簬鍏ㄥ眬鍑芥暟錛屼篃鍙敤浜庣被鐨勬垚鍛樺嚱鏁幫紱 Const鍜孷irtual錛氬彧鍙敤浜庣被鐨勬垚鍛樺嚱鏁幫紱 閲嶈澆錛氬湪鍚屼竴綾諱腑錛屽嚱鏁板悕鐩稿悓鐨勫嚱鏁般傜敱涓嶅悓鐨勫弬鏁板喅瀹氳皟鐢ㄩ偅涓嚱鏁般傚嚱鏁板彲瑕佷笉鍙Virtual鍏抽敭瀛椼傚拰鍏ㄥ眬鍑芥暟鍚屽悕鐨勫嚱鏁頒笉鍙噸杞姐傚鏋滃湪綾諱腑璋冪敤鍚屽悕鐨勫叏灞鍑芥暟錛屽繀欏葷敤鍏ㄥ眬寮曠敤絎﹀彿::寮曠敤銆?br>瑕嗙洊鏄寚媧劇敓綾誨嚱鏁拌鐩栧熀綾誨嚱鏁幫細鍑芥暟鍚嶇浉鍚岋紱鍙傛暟鐩稿悓錛涘熀綾誨嚱鏁板繀欏繪湁Virtual鍏抽敭瀛楋紱涓嶅悓鐨勮寖鍥?媧劇敓綾誨拰鍩虹被)銆?br>闅愯棌鏄寚媧劇敓綾誨睆钄戒簡鍩虹被鐨勫悓鍚嶅嚱鏁扮浉鍚?br>1銆?鍑芥暟鍚嶇浉鍚岋紝浣嗗弬鏁頒笉鍚岋紝姝ゆ椂涓嶈鍩虹被鏈夋棤Virtual鍏抽敭瀛楋紝鍩虹被鍑芥暟灝嗚闅愯棌銆?br>2銆?鍑芥暟鍚嶇浉鍚岋紝鍙傛暟涔熺浉鍚岋紝浣嗗熀綾繪棤Virtual鍏抽敭瀛?鏈夊氨鏄鐩?錛屽熀綾誨嚱鏁板皢琚殣钘忋?br>鍐呰仈錛歩nline鍏抽敭瀛楀繀欏諱笌瀹氫箟浣撴斁鍦ㄤ竴璧鳳紝鑰屼笉鏄崟鍗曟斁鍦ㄥ0鏄庝腑銆?br>Const錛歝onst鏄痗onstant鐨勭緝鍐欙紝“鎭掑畾涓嶅彉”鐨勬剰鎬濄傝const淇グ鐨勪笢瑗塊兘鍙楀埌寮哄埗淇濇姢錛屽彲浠ラ闃叉剰澶栫殑鍙樺姩錛岃兘鎻愰珮紼嬪簭鐨勫仴澹с?br>1銆?鍙傛暟鍋氳緭鍏ョ敤鐨勬寚閽堝瀷鍙傛暟錛屽姞涓奵onst鍙槻姝㈣鎰忓鏀瑰姩銆?br>2銆?鎸夊煎紩鐢ㄧ殑鐢ㄦ埛綾誨瀷鍋氳緭鍏ュ弬鏁版椂錛屾渶濂藉皢鎸夊間紶閫掔殑鏀逛負寮曠敤浼犻掞紝騫跺姞涓奵onst鍏抽敭瀛楋紝鐩殑鏄負浜嗘彁楂樻晥鐜囥傛暟鎹被鍨嬩負鍐呴儴綾誨瀷鐨勫氨娌″繀瑕佸仛榪欎歡浜嬫儏錛涘錛?br>灝唙oid Func(A a) 鏀逛負void Func(const A &a)銆?br>鑰寁oid func(int a)灝辨病蹇呰鏀規(guī)垚void func(const int &a); 3銆?緇欒繑鍥炲間負鎸囬拡綾誨瀷鐨勫嚱鏁板姞涓奵onst錛屼細浣垮嚱鏁拌繑鍥炲間笉鑳借淇敼錛岃祴緇欑殑鍙橀噺涔熷彧鑳芥槸const鍨嬪彉閲忋傚錛氬嚱鏁癱onst char*GetString(void); char *str=GetString()灝嗕細鍑洪敊銆傝宑onst char *str=GetString()灝嗘槸姝g‘鐨勩?br>4銆?Const鎴愬憳鍑芥暟鏄寚姝ゅ嚱鏁頒綋鍐呭彧鑳借皟鐢–onst鎴愬憳鍙橀噺錛屾彁楂樼▼搴忕殑閿.鎬с傚澹版槑鍑芥暟 int GetCount(void) const;姝ゅ嚱鏁頒綋鍐呭氨鍙兘璋冪敤Const鎴愬憳鍙橀噺銆?br>Virtual錛氳櫄鍑芥暟錛氭淳鐢熺被鍙互瑕嗙洊鎺夌殑鍑芥暟錛岀函铏氬嚱鏁幫細鍙槸涓┖鍑芥暟錛屾病鏈夊嚱鏁板疄鐜頒綋錛?br>鍗佸叚銆乪xtern“C”鏈変粈涔堜綔鐢紵 Extern “C”鏄敱錛o紜錛嬫彁渚涚殑涓涓繛鎺ヤ氦鎹㈡寚瀹氱鍙鳳紝鐢ㄤ簬鍛婅瘔錛o紜錛嬭繖孌典唬鐮佹槸錛e嚱鏁般傝繖鏄洜涓篊++緙栬瘧鍚庡簱涓嚱鏁板悕浼氬彉寰楀緢闀匡紝涓嶤鐢熸垚鐨勪笉涓鑷達紝閫犳垚錛o紜錛嬩笉鑳界洿鎺ヨ皟鐢–鍑芥暟錛屽姞涓奺xtren “c”鍚庯紝C++灝辮兘鐩存帴璋冪敤C鍑芥暟浜嗐?br>Extern “C”涓昏浣跨敤姝hDLL鍑芥暟鐨勫紩鐢ㄥ拰瀵煎嚭 鍜?鍦–++鍖呭惈C鍑芥暟鎴朇澶存枃浠舵椂浣跨敤銆備嬌鐢ㄦ椂鍦ㄥ墠闈㈠姞涓奺xtern “c” 鍏抽敭瀛楀嵆鍙?br>鍗佷竷銆佹瀯閫犲嚱鏁頒笌鏋愭瀯鍑芥暟 媧劇敓綾葷殑鏋勯犲嚱鏁板簲鍦ㄥ垵濮嬪寲琛ㄩ噷璋冪敤鍩虹被鐨勬瀯閫犲嚱鏁幫紱 媧劇敓綾誨拰鍩虹被鐨勬瀽鏋勫嚱鏁板簲鍔燰irtual鍏抽敭瀛椼?br>涓嶈灝忕湅鏋勯犲嚱鏁板拰鏋愭瀯鍑芥暟錛屽叾瀹炵紪璧鋒潵榪樻槸涓嶅鏄撱?div class="code">#include <iostream.h> class Base { public: virtual ~Base() { cout<< "~Base" << endl ; } }; class Derived : public Base { public: virtual ~Derived() { cout<< "~Derived" << endl ; } }; void main(void) { Base * pB = new Derived; // upcast delete pB; }杈撳嚭緇撴灉涓猴細 ~Derived ~Base 濡傛灉鏋愭瀯鍑芥暟涓嶄負铏氾紝閭d箞杈撳嚭緇撴灉涓?br>~Base鍗佸叓銆?IFNDEF/#DEFINE/#ENDIF鏈変粈涔堜綔鐢?/span> 浠挎璇ュご鏂囦歡琚噸澶嶅紩鐢?nbsp; ]]> UNIX涓嬬紪璇慡QLite3.3.6 http://m.shnenglu.com/cc/archive/2009/09/18/96655.html鍖楅涔嬬007 鍖楅涔嬬007 Fri, 18 Sep 2009 09:41:00 GMT http://m.shnenglu.com/cc/archive/2009/09/18/96655.html http://m.shnenglu.com/cc/comments/96655.html http://m.shnenglu.com/cc/archive/2009/09/18/96655.html#Feedback 1 http://m.shnenglu.com/cc/comments/commentRss/96655.html http://m.shnenglu.com/cc/services/trackbacks/96655.html 铏界劧鐜板湪鏈鏂扮殑鐗堟湰宸茬粡鏂頒簡涓嶅皯錛屼笉榪囪繖涓姛鑳戒篃鍙互浜嗭紝鍒氬ソ闇瑕佸湪HPUX錛孉IX浠ュ強Solaris閮戒嬌鐢ㄥ畠錛孯edhat涓嬮潰鑷甫錛屾墍浠ュ湪UNIX涓嬮潰瑕佺紪璇戜簡涓涓嬶紝榪欓噷鎶奙akefile鏂囦歡鍋氫簡涓浜涜皟鏁達紝緙栬瘧閫氳繃浜嗐?br> 瑙e帇緙╀箣鍚庝笉闇瑕佸啀鎵ц Configure鍛戒護浜嗭紝鐩存帴make灝卞彲浠ヤ簡錛屾渶鍚庝細鍦ㄥ綋鍓嶇洰褰曚笅鐨?strong style="COLOR: #3366ff">.libs涓敓鎴愮浉鍏崇殑搴擄紝榪炴帴紼嬪簭鐨勬椂鍊欏姞涓婅繖浜涘簱灝卞彲浠ヤ簡銆?br> SQLite3.3.6 涓嬭澆 錛?strong style="COLOR: #ff0000">AIX 5.2 XLC++V7嫻嬭瘯閫氳繃錛?br> SQLite3.3.6 涓嬭澆 錛?strong style="COLOR: #ff0000">HPUX 11.23 aCC嫻嬭瘯閫氳繃錛?/span> ]]> *.bff鏂囦歡鐨勫畨瑁?/title> http://m.shnenglu.com/cc/archive/2009/09/17/96509.html鍖楅涔嬬007 鍖楅涔嬬007 Thu, 17 Sep 2009 03:51:00 GMT http://m.shnenglu.com/cc/archive/2009/09/17/96509.html http://m.shnenglu.com/cc/comments/96509.html http://m.shnenglu.com/cc/archive/2009/09/17/96509.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/96509.html http://m.shnenglu.com/cc/services/trackbacks/96509.html 浠婂ぉ瑁呬簡涓鍙癆IX5.2鐨勭幆澧冿紝榪樿瑁呯紪璇戝櫒錛屼笉榪囨墜閲屽彧鏈塜LC++.V7鐗堟湰鐨勶紝浠ュ墠鍦ˋIX5.2璺?.3鐨勭郴緇熶笂閮借榪囧緢澶氶亶浜嗭紝鐩存帴浣跨敤simt宸ュ叿錛岄夊ソ紼嬪簭璺緞灝卞彲浠ヤ簡錛屽熀鏈笂浠ヤ負涓嶄細鏈変粈涔堥棶棰橈紝浣嗘槸浠婂ぉ鍦ㄨ鐨勮繃紼嬩腑鍗撮亣鍒頒簡涓浜涙剰鎯充笉鍒扮殑闂銆?br> 緋葷粺瑁呭ソ涔嬪悗錛屽厛鎵撲簡琛ヤ竵錛岀劧鍚庡紑濮嬭緙栬瘧鍣紝浣嗘槸鍦ㄨ鐨勮繃紼嬩腑錛屾彁紺簒lmass.lib 4.3.0.0鎵句笉鍒幫紝瀹夎紼嬪簭鐩綍涓嬮潰鍙湁xlmass.lib 4.1.0.0鐨勭増鏈紝鐢辨閫犳垚鍚庨潰鍑犱釜鍏抽敭鍖呬篃瀹夎涓嶆垚鍔燂紝鏈緇堝鑷村畨瑁呭け璐ャ傛垜涓嶅仠鐨勫湪鍏夌洏閲岄潰鎵懼晩鎵撅紝甯屾湜鑳芥壘鍒?.3.0.0鐗堟湰鐨勶紝鍙槸榪樻槸娌℃湁鎵懼埌錛岄棶棰樺ソ鍍忚繘鍏ヤ簡姝昏儭鍚屼簡銆?br> 瀹夎榪囩▼瀹為檯闇瑕佺殑鏄笅闈㈢殑鐗堟湰
鎬庝箞鎼炲憿錛屾湁浜嬫儏闂産aidu錛実oogle錛屾煡浜嗗崐澶╋紝緇堜簬鎵懼埌浜咺BM鐨刋LC++鐨勭綉欏?br>http://www-01.ibm.com/support/docview.wss?rs=0&uid=swg24019560 錛屾槸XLC++V7鍦ˋIX5.2涓婇潰鐨勮繍琛屽簱錛岄噷闈㈠氨鏈墄lmass鐩稿叧鐨勫寘錛岃屼笖鏄?.4.0.0鐗堟湰鐨勶紝姣旇姹傜殑瑕侀珮浜嗭紝涓嶇煡閬撹涓嶈錛屼笉綆′簡錛屼笅鏉ュ啀璇淬倀ar.Z鏂囦歡錛屽厛鐢╱ncompress瑙e帇緙╋紝鐒跺悗鍐峵ar xvf灝卞彲浠ヤ簡錛屽嚭鏉ヤ竴鍫?.bff鏂囦歡錛岃繕鐪熸病鏈夌敤榪囪繖涓笢瑗匡紝緇х畫baidu錛屽師鏉ュ湪smit宸ュ叿閲岄潰鎵撳紑灝卞彲浠ヤ簡銆?br>瓚呯駭鐢ㄦ埛妯″紡涓嬶紝smit installp->瀹夎杞歡錛岄夋嫨bff鏂囦歡鎵鍦ㄧ殑璺緞鍗沖彲錛岀劧鍚庡氨鏄畨瑁呬簡錛屽畨瑁呰繃紼嬩腑鎻愮ず鏈夐敊璇紝浣嗘槸鎴戣鐨勮繖鍑犱釜鍖呭ソ鍍忔彁浜ゆ垚鍔熶簡錛屾墍浠ヤ篃涓嶇浜嗭紝瑁呰繃涔嬪悗鍐嶆甯稿畨瑁匵LC++錛岃瀹岃繍琛寈lc鍛戒護錛屽ぇ鍔熷憡鎴愰樋銆?/span> ]]> 閲嶈緋葷粺鍚嶰RACLE鐨勬仮澶嶇殑鍑犵鏂規(guī)硶(杞澆) http://m.shnenglu.com/cc/archive/2009/08/19/93812.html鍖楅涔嬬007 鍖楅涔嬬007 Wed, 19 Aug 2009 04:48:00 GMT http://m.shnenglu.com/cc/archive/2009/08/19/93812.html http://m.shnenglu.com/cc/comments/93812.html http://m.shnenglu.com/cc/archive/2009/08/19/93812.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/93812.html http://m.shnenglu.com/cc/services/trackbacks/93812.html 鎴戠殑鐢?shù)鑴懡H佺劧鎸備簡錛屼笉寰椾笉閲嶈緋葷粺錛屼笉榪囨垜鐨凮RACLE瑁呭湪浜咲鐩橈紝鎵鏈夌殑鏂囦歡閮借繕鍦紝鎴戠浉淇′竴瀹氳兘澶熸仮澶嶏紝鐩村埌鎼炲畾宸ヤ綔錛屾垜鎵嶅紑濮嬫暣鎴戠殑鏁版嵁搴擄紝鑺變簡涓ゅぉ鏃墮棿錛岀粓浜庢仮澶嶄簡錛屽簡紲濅竴涓嬶紝鍚屾椂鎬葷粨涓涓嬶紝甯屾湜鏈夐亣鍒板悓鏍烽棶棰樼殑鏈嬪弸鑳藉蹇熸悶瀹氭綾婚棶棰? 絎竴縐嶏細 棣栧厛錛屽浠芥暟鎹簱(X:\oracle\oradata)涓嬬殑鏁版嵁鏂囦歡錛岄噸鏂板懡鍚嶅嵆鍙?鍚﹀垯瑁呮暟鎹簱鐨勬椂鍊欎細鎻愮ずsid宸插瓨鍦?銆傞噸鏂板畨瑁呮暟鎹簱錛屽綋鐒舵暟鎹簱鐨勫悕瀛楀氨鏄綘瑕佹仮澶嶇殑鍚嶅瓧銆傚畨瑁呭畬鎴愬悗錛屾墦寮鎺у埗闈㈡澘錛屽仠姝racle鐨勬湇鍔°傛妸(X:\oracle\oradata)涓嬫柊鐢熸垚鐨勬枃浠舵敼鍚嶏紝鎶婂師鍏堢洰褰曚笅鐨勬枃浠舵仮澶嶅悕瀛椼傚啀閲嶆柊鍚姩oracle鏈嶅姟鍜岀洃鍚傜敤sys/as dba 鐧婚檰鏁版嵁搴擄紝鍙兘浼氭彁紺烘潈闄愪笉澶燂紙ora-01031錛変慨鏀癸紙X:\oracle\ora92\network\admin )鏂囦歡澶逛笅鐨剆qlnet.ora鏂囦歡錛屾坊鍔燬QLNET.AUTHENTICATION_SERVICES= (NTS)錛屽鍔犳潈闄愩傜櫥闄嗚繘鍘誨悗錛屾墦寮table鎻愮ず涓嶈兘鎵撳紑銆傛墦寮common欏碉紝鎵ц鍛戒護alert database open錛涜繖鏃跺啀鍒鋒柊table錛屽彂鐜板師鍏堢殑琛ㄥ彲浠ユ墦寮浜嗐傛仮澶嶆垚鍔熶簡銆傚啀鐢ㄥ師鍏堟暟鎹簱鐨勬櫘閫氱敤鎴瘋繘鍏ャ傚彂鐜頒竴鍒囨甯搞傝嚦姝わ紝澶у姛鍛婃垚銆? 絎簩縐嶏細1銆侀鍏堬紝灝嗗師鏉ョ殑ORACLE鏂囦歡澶規(guī)敼鍚嶏紝鍘熸潵鐨勮礬寰勬槸D:/oracle銆傛垜鏆傛椂鏀規(guī)垚D:/oracle_old銆傛壘鏉RACLE錛堟垜鐢ㄧ殑鏄疧RACLE 9I錛夊畨瑁呭厜鐩橈紝灝哋RACLE瀹夎鍦ㄥ師鏉ュ畨瑁呯殑鐩綍涓嬶紝榪欐牱鎭㈠璧鋒潵鏇村姞鏂逛究錛屼富瑕佹槸娉ㄥ唽琛ㄧ殑鍐呭涓嶇敤淇敼銆?2銆佸畨瑁呭畬浜嗕箣鍚庯紝緋葷粺涓張鏈変竴涓彲浠ヤ嬌鐢ㄧ殑ORACLE浜嗐傝繖涓椂鍊欒鍋氱殑灝辨槸灝嗗師鏉ョ殑鏂囦歡鍜屾暟鎹仮澶嶈繃鏉ャ傜涓姝ワ紝鍏堝叧闂璒RACLE鐨勬墍鏈夊凡緇忓惎鍔ㄧ殑欏圭洰錛屽湪“鏈嶅姟”閲岄潰閫愪竴鍏抽棴銆傜劧鍚庯紝灝嗗畨瑁呯洰褰曟敼鍚嶃傛垜鐜板湪鐢ㄧ殑鏄疍:/oracle銆傛敼鎴怐:/oracle_new銆傚啀灝咲:/oracle_old鏀規(guī)垚D:/oracle銆?榪欐牱鐞嗚涓婅浠庣墿鐞嗗眰闈㈡仮澶嶄簡ORACLE浜嗐備絾鏄垜浠彂鐜幫紝鐜板湪榪樹笉鑳藉惎鍔∣RACLE鐨勭洃鍚▼搴忓拰鏈嶅姟紼嬪簭銆傛垜浠繕瑕佷粠閫昏緫涓婅В鍐熾? 3銆佸湪dos鐜涓嬫墽琛屼竴涓垹闄ゅ懡浠わ細oradim -delete -sid mm錛屽叾涓璵m涓哄垱寤簅racle鏃跺欏垱寤虹殑瀹炰緥 寤鴻鎵ц榪欎釜鍛戒護鍚庨噸鏂板惎鍔ㄦ満鍣紝閲嶅惎鍚庡氨鍙互寤虹珛鍜屽師鏉ュ疄渚嬪悕鐩稿悓鐨勫疄渚嬨傚綋鐒朵綘鎳掞紝涓嶉噸鏂板惎鍔ㄤ篃鍙互錛屼絾鏄綘鐨勫疄渚嬪悕灝變笉鑳藉拰鍘熸潵鐨勪竴鏍蜂簡銆? 4銆佸湪dos鐜涓嬫墽琛屽懡浠?oradim -new -sid mm -startmode a -pfile "D:\oracle\admin\mm\pfile\initmm.ora "鍒涘緩涓涓柊鐨勫疄渚嬶紝鍏朵腑 “mm“涓烘柊鏁版嵁搴撶殑鍚嶇О銆? 5銆佸惎鍔ㄦ湇鍔★紝鍏堟墦寮鏁版嵁搴擄紝鐒跺悗鍙互鐢ㄤ互鍓嶇殑鐢ㄦ埛鍚嶅拰瀵嗙爜鐧婚檰榪涘幓銆?瑕佽ˉ鍏呯殑鏄紝涓鑸殑ORACLE鏁版嵁搴撶殑鐩戝惉紼嬪簭閮芥槸鐢ㄧ數(shù)鑴戠殑鍚嶇О鏉ヨ瘑鍒湴鍧鐨勶紝鑰屼笉鏄?27.0.0.1鎴栬卨ocalhost銆傛墍浠ワ紝濡傛灉鎴戜滑瀹夎緋葷粺鐨勬椂鍊欑敤鐨勬槸涓嶅悓鐨勭數(shù)鑴戝悕縐幫紙姣斿鎴戝師鏉ョ敤鐨勬槸wm_mm銆傞噸鏂板畨瑁呭悗鐢ㄧ殑鏄痺enming_mm錛夛紝閭d箞鎴戜滑榪樻湁涓涓伐浣滆鍋氾紝灝辨槸淇敼鏂囦歡 listener.ora銆傚皢閲岄潰鐨勭浉鍏崇殑涓滆タ鏀硅繃鏉ュ氨鍙互浜嗐? 闇瑕佽愬績銆佺粏蹇冿紝鍙兘鍦ㄤ竴姝ラ噷鏈変竴涓粏灝忕殑宸埆灝變細鍑轟簺鍙ゆ殑閿欒鎻愮ず錛屾湁鏃墮渶瑕佹牴鎹敊璇彁紺洪噰鍙栫瓥鐣ワ紝鎬諱箣鍘熺悊鏄紝鍏堣涓涓竴妯′竴鏍風殑ORACLE錛屽畨瑁呯洰褰曘佹暟鎹簱鍚嶇О閮戒竴鏍鳳紝榪欐牱淇濊瘉娉ㄥ唽琛ㄩ噷涓嶇敤鏇存敼錛涘啀瑕嗙洊鐗╃悊鏂囦歡錛屾渶鍚庨噸鏂板疄渚嬪寲錛屾墦寮鏁版嵁搴撳氨鍙互榪涘幓浜嗐? 娉細鎭㈠蹇呴』瑕佹湁浠ヤ笅鏂囦歡 a銆佸垵濮嬪寲鍙傛暟鏂囦歡INIT.ORA b銆佹墍鏈夋暟鎹枃浠?.dbf c銆佹墍鏈夐噸鍋氭棩蹇楁枃浠訛紙鑱旀満鏃ュ織銆佸綊妗f棩蹇楋級redo d銆佹墍鏈夋帶鍒舵枃浠?crtl e銆乮nternal瀵嗙爜鏂囦歡 ]]>Solaris鐜涓嬬紪璇戝ご鏂囦歡鐨勬敞鎰忎簨欏?/title> http://m.shnenglu.com/cc/archive/2009/07/29/91597.html鍖楅涔嬬007 鍖楅涔嬬007 Wed, 29 Jul 2009 07:45:00 GMT http://m.shnenglu.com/cc/archive/2009/07/29/91597.html http://m.shnenglu.com/cc/comments/91597.html http://m.shnenglu.com/cc/archive/2009/07/29/91597.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/91597.html http://m.shnenglu.com/cc/services/trackbacks/91597.html 鏈榪戝湪Solaris涓婄紪璇戠▼搴忕殑鏃跺欙紝鍙戠幇瀹冪殑緙栬瘧鍣ㄦ湁涓鎬殑涔犳儻錛屽氨鏄ご鏂囦歡鐨勬渶鍚庝竴琛岃鍔犱笂涓琛屽洖杞﹁錛屼笉鐭ラ亾鏄粈涔堝洖浜嬶紝鍚﹀垯灝變細浜х敓璀﹀憡錛屽湪Solaris涓婅鐨勫氨鏄痵un鍏徃鑷繁鐨剆unstudio寮鍙戝伐鍏鳳紝鍦℉PUX璺烝IX涓婇兘娌℃湁榪欎釜闂錛屽簲璇ユ槸緙栬瘧鍣ㄧ殑浜嬫儏鍚с?br>涓嬮潰鎴釜鍥劇粰澶у鐪嬬湅錛?br>
]]> 綆鍗曚粙緇峌NIX涓嬬紪鍐欏畾鏃跺櫒紼嬪簭 http://m.shnenglu.com/cc/archive/2009/06/02/86548.html鍖楅涔嬬007 鍖楅涔嬬007 Tue, 02 Jun 2009 07:46:00 GMT http://m.shnenglu.com/cc/archive/2009/06/02/86548.html http://m.shnenglu.com/cc/comments/86548.html http://m.shnenglu.com/cc/archive/2009/06/02/86548.html#Feedback 1 http://m.shnenglu.com/cc/comments/commentRss/86548.html http://m.shnenglu.com/cc/services/trackbacks/86548.html 鍒氬ソ鍐欑▼搴忕殑鏃跺欒浣跨敤瀹氭椂鍣紝灝辨槸瀹氭椂鐨勫仛涓浜涙搷浣滐紝緗戜笂鏌ヤ簡涓涓嬶紝鑷繁涔熷鐫鍐欎簡鍐欙紝緗戜笂鍊掓槸璇寸殑濂藉縐嶏紝鎴戝湪榪欓噷灝變笉鍋氳繃澶氫粙緇嶄簡錛屽氨璇存垜鐢ㄧ殑榪欎釜錛屼嬌鐢?span lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: black; FONT-FAMILY: 藥胎; mso-fareast-font-family: 瀹嬩綋; mso-bidi-font-family: 瀹嬩綋; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">setitimer 鍑芥暟銆?br>鍑芥暟鍘熷瀷 int setitimer(int which, const struct itimerval *value, struct itimerval *ovalue); 鍙傛暟璇存槑 鍙傛暟which 鍙傛暟 which鏄畾鏃跺櫒綾誨瀷
鍙栧?/span>
鍚箟
淇″彿鍙戦?/span>
ITIMER_REAL
瀹氭椂鐪熷疄鏃墮棿錛屼笌 alarm 綾誨瀷鐩稿悓銆?/span>
SIGALRM
ITIMER_VIRT
瀹氭椂榪涚▼鍦ㄧ敤鎴鋒佷笅鐨勫疄闄呮墽琛屾椂闂淬?/span>
SIGVTALRM
ITIMER_PROF
瀹氭椂榪涚▼鍦ㄧ敤鎴鋒佸拰鏍稿績鎬佷笅 鐨勫疄闄呮墽琛屾椂闂淬?/span>
SIGPROF
榪欎笁縐嶅畾鏃跺櫒瀹氭椂瀹屾垚鏃剁粰榪涚▼鍙戦佺殑淇″彿鍚勪笉鐩稿悓錛屽叾涓璉TIMER_REAL綾誨畾鏃跺櫒鍙戦丼IGALRM淇″彿錛孖TIMER_VIRT綾誨畾鏃跺櫒鍙戦丼IGVTALRM淇″彿錛?span lang=EN-US style="BORDER-RIGHT: windowtext 1pt; PADDING-RIGHT: 0cm; BORDER-TOP: windowtext 1pt; PADDING-LEFT: 0cm; FONT-SIZE: 12pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt; COLOR: black; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt; FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-border-alt: none windowtext 0cm">ITIMER_PROF 綾誨畾鏃跺櫒鍙戦丼IGPROF淇″彿銆?/span>
鍙傛暟 value 緇撴瀯itimerval鎻忚堪浜嗗畾鏃跺櫒鐨勭粍鎴愩?br>
1 struct itimerval 2 { 3 struct timeval it_interval; /* 涓嬫瀹氭椂鍙栧?nbsp; */ 4 struct timeval it_value; /* 鏈瀹氭椂璁劇疆鍊?nbsp; */ 5 } 6
緇撴瀯timeval鎻忚堪鐨勬槸綺劇‘鍒板井縐掔殑緇撴瀯銆?br>
1 struct timeval 2 { 3 long tv_sec; /* 縐掞紙1000000寰錛?nbsp; */ 4 long tv_usec; /* 寰 */ 5 } 6
itimerval緇撴瀯涓殑it_value鏄唬琛ㄩ嬈″畾鏃剁殑鏃墮棿錛岃宨t_interval浠h〃涓嬩竴嬈″畾鏃剁殑鏃墮棿錛屾墽琛屽畬絎竴嬈′箣鍚庯紝it_interval涓殑鏃墮棿浼氳祴鍊肩粰it_value錛屽懆鑰屽濮嬨傚鏋渋t_value鍊艱璁劇疆涓?錛屽垯瀹氭椂鍣ㄥ仠姝㈠畾鏃訛紱濡傛灉it_value鍊間笉涓?浣唅t_interval鍊間負0錛屽垯瀹氭椂鍣ㄥ湪涓嬈″畾鏃跺悗緇堟銆?br> setitimer鎵ц鎴愬姛榪斿洖0錛屽惁鍒欒繑鍥?1鍙傛暟ovalue 璇ュ弬鏁板彲浠ヤ嬌鐢ㄧ┖鍊糔ULL錛屽鏋滀笉涓虹┖鐨勮瘽錛岃繑鍥炵殑鏄笂涓涓椂鍒葷殑瀹氭椂鍣ㄧ姸鎬併?br> 涓嬮潰鍐欑殑涓涓畝鍗曠殑渚嬪瓙紼嬪簭銆?br>
1 #include < stdio.h > 2 #include < stdlib.h > 3 #include < unistd.h > 4 #include < signal.h > 5 #include < time.h > 6 #include < sys / time.h > 7 8 int n = 0 ; 9 void doAction( int sig) // 浣犺鍋氱殑浜嬫儏 10 { 11 printf( " 璁╀竴鍒囩棝鑻﹂殢椋庤屽幓 %d\n " ,n ++ ); 12 signal(SIGALRM,doAction); 13 } 14 void setMyTimer( int val) 15 { 16 struct itimerval value; 17 value.it_value.tv_sec = val; 18 value.it_value.tv_usec = 0 ; 19 value.it_interval.tv_sec = val; // val縐?/span>20 value.it_interval.tv_usec = 0 ; 21 signal(SIGALRM, doAction); 22 setitimer(ITIMER_REAL, & value,NULL); 23 while ( 1 ); 24 } 25 26 int main( int argc, char ** argv ) 27 { 28 if (argc < 2 ) 29 { 30 printf( " 璇鋒偍杈撳叆鍙傛暟:\n " ); // 絎簩涓弬鏁版槸瀹氭椂鍣ㄧ殑鏃墮暱鐨勶紝鍗曚綅鏄 31 return - 1 ; 32 } 33 int val = atoi(argv[ 1 ]); 34 printf( " %d\n " ,val); 35 setMyTimer(val); 36 return 0 ; 37 }
浠g爜灝變笉瑙i噴浜嗭紝灝辨槸鍚姩鐨勬椂鍊欒幏寰楃浜屼釜鍙傛暟錛岀敤浣滃畾鏃跺櫒鐨勬椂闂達紝鐒跺悗鎵撳嵃鍑?#8220;璁╀竴鍒囩棝鑻﹂殢椋庡幓 0”錛屽姝ゅ驚鐜?br>鍦ˋIX5.2涓嬶紝浣跨敤XLC++V7.0緙栬瘧閫氳繃銆?br> 榪愯鏁堟灉濡備笅 ]]> 涓繪祦UNIX鍛戒護瀵規(guī)瘮琛?/title> http://m.shnenglu.com/cc/archive/2009/04/18/80396.html鍖楅涔嬬007 鍖楅涔嬬007 Sat, 18 Apr 2009 13:43:00 GMT http://m.shnenglu.com/cc/archive/2009/04/18/80396.html http://m.shnenglu.com/cc/comments/80396.html http://m.shnenglu.com/cc/archive/2009/04/18/80396.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/80396.html http://m.shnenglu.com/cc/services/trackbacks/80396.html 涓繪祦UNIX鍛戒護瀵規(guī)瘮琛ㄤ笅杞?/u>
]]>XMananger涓嶈兘鐧誨綍AIX鐨勯棶棰樺垎鏋?/title> http://m.shnenglu.com/cc/archive/2009/04/13/79538.html鍖楅涔嬬007 鍖楅涔嬬007 Mon, 13 Apr 2009 13:33:00 GMT http://m.shnenglu.com/cc/archive/2009/04/13/79538.html http://m.shnenglu.com/cc/comments/79538.html http://m.shnenglu.com/cc/archive/2009/04/13/79538.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/79538.html http://m.shnenglu.com/cc/services/trackbacks/79538.html 絎竴縐嶏細紓佺洏婊?br> 鎴戜滑鍦ㄥ啓紼嬪簭鐨勬椂鍊欙紝緇忓父浼氬嚭鐜頒竴浜涚▼搴忔鎺夌殑闂錛屽湪Windows緋葷粺涓紝紼嬪簭姝繪帀灝辨鎺変簡錛岄噸鍚竴涓嬪氨琛屼簡錛屼絾鏄湪UNIX鐜涓嬶紝榛樿鎯呭喌涓嬬▼搴忔鎺変簡閮戒細浜х敓涓涓猚ore鏂囦歡錛宑ore鏂囦歡涓槸紼嬪簭鐨勫唴瀛樻槧灝勯儴鍒嗭紝璇ユ枃浠剁殑涓昏浣滅敤鏄敤鏉ュ府鎴戜滑鏌ユ壘闂鐨勬晠闅滃師鍥狅紝璋冭瘯鐢ㄧ殑銆?nbsp; 鍏蜂綋鐨勮皟璇曢渶瑕佷嬌鐢╠bx宸ュ叿錛岃繖閲屼笉浣滀粙緇嶃傚湪榪欑鎯呭喌涓嬶紝鍙互璁懼畾緋葷粺鍙敓鎴愪竴涓猚ore鏂囦歡錛屽悗鏉ョ敓鎴愮殑core鏂囦歡浼氳鐩栧墠闈㈢殑錛岃繖閲屽氨闇瑕佷慨鏀?cshrc鏂囦歡涓殑鍙傛暟錛岃繖閲屼嬌鐢ㄧ殑鏄痗shell錛?nbsp; 鎵撳紑.cshrc鏂囦歡涔嬪悗錛屾垜浠壘鍒板涓嬪嚑琛岋紝濡傛灉娌℃湁鐨勮瘽錛岃嚜宸卞彲浠ユ墜宸ュ~鍏ャ?br> #setenv CORE_NAMING true setenv CORE_COMPRESS true setenv CORE_PATH true 鍓嶉潰鍔犱竴涓?span style="COLOR: #0000ff">#鍙蜂唬琛ㄦ槸娉ㄩ噴鎺夛紝鎵浠ヨ繖涓琛屽氨涓嶈搗浣滅敤浜嗭紝鐢熸垚鐨刢ore鏂囦歡閮藉彨core錛岃屼笉鍐嶅甫鏈夋棩鏈熸爣璁幫紝鎵浠ラ粯璁ゅ氨浼氬彧鐢熸垚涓涓猚ore鏂囦歡浜嗭紝浣嗘槸榪欑鎯呭喌涓嬩互鍓嶇殑core鏂囦歡浼氳瑕嗙洊錛屾墍浠ヨ皟璇曚互鍓嶇殑紼嬪簭灝變笉鏂逛究浜嗭紝鍙兘涔熶笉鐭ラ亾浠ュ墠鏈夊摢浜涚▼搴忔鎺変簡銆?br> 絎簩縐嶏細hosts鏂囦歡緙哄皯鍐呭 涓鑸潵璇達紝/etc/hosts鏂囦歡涓細鏈夋湰鍦頒富鏈虹殑IP淇℃伅錛屽氨綆楀皯錛屼篃搴旇鏈?span style="COLOR: #0000ff"> 127.0.0.1 localhost榪欐牱鐨勬潯鐩俊鎭紝濡傛灉娌℃湁鐨勮瘽錛岃繙紼嬬櫥褰曚笂鏉ョ殑鏃跺欙紝鍙兘浼氳繘鍏ョ櫥褰曠晫闈紝浣嗘槸杈撳叆鐢ㄦ埛鍚嶅瘑鐮佺櫥褰曚箣鍚庯紝鐣岄潰灝變細鍋滄錛屾垨鑰呴棶棰樺璇濇錛岀偣鍑葷‘瀹氫箣鍚庡氨閫鍑虹郴緇熶簡錛岃繖縐嶆儏鍐典笅瑕佹鏌osts鏂囦歡鏄惁鏈夊搴旂殑 IP 涓庝富鏈哄悕淇℃伅錛屽鏋滄病鏈夛紝闇瑕佹墜宸ュ姞鍏ャ?br> 絎笁縐嶏細CDE妗岄潰榪涚▼鏈惎鍔?br> 鍦ㄧ郴緇熻繍琛岃繃紼嬩腑錛孋DE妗岄潰榪涚▼鍙兘姝繪満浼氬畷鎺夛紝鎴栬呯敱浜庡叾浠栧師鍥犳病鏈夊惎鍔紝鎵浠ラ渶瑕乼elnet涓婁富鏈猴紝鐒跺悗鎵嬪伐鍚姩銆?br>鍚姩鍛戒護濡備笅錛?br> # /etc/rc.dt ]]> AIX涓殑inittab 鏂囦歡錛堣漿錛?/title> http://m.shnenglu.com/cc/archive/2008/09/08/61305.html鍖楅涔嬬007 鍖楅涔嬬007 Mon, 08 Sep 2008 06:32:00 GMT http://m.shnenglu.com/cc/archive/2008/09/08/61305.html http://m.shnenglu.com/cc/comments/61305.html http://m.shnenglu.com/cc/archive/2008/09/08/61305.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/61305.html http://m.shnenglu.com/cc/services/trackbacks/61305.html
/etc/inittab 鏂囦歡鎺у埗鐫鍒濆鍖栬繃紼嬨?/font>
/etc/inittab 鏂囦歡涓?init 鍛戒護鎻愪緵鑴氭湰浣滀負涓涓櫘閫氳繘紼嬭皟搴︾▼搴忋傛瀯鎴?init 鍛戒護榪涚▼璋冨害媧誨姩鐨勪富瑕侊紙澶氭暟錛夎繘紼嬫槸 /etc/getty 綰胯繘紼嬶紙line process錛夛紝鍙戣搗錛堝惎鍔級涓撶敤綰胯繘紼嬨傝 init 鍛戒護鐗瑰埆璋冨害鐨勫叾浠栬繘紼嬩負鍚庡彴榪涚▼錛圖aemon錛夊拰shell銆?/font>
/etc/inittab 鏂囦歡鐢?浣嶇疆鐩稿叧錛籶osition-dependent 錛界殑鏉$洰緇勬垚錛屾牸寮忓涓嬶細
Identifier:RunLevel:Action:Command
姣忎竴涓潯鐩兘琚竴涓崲琛屽瓧絎﹀垎闅斻備竴涓崲琛屽瓧絎﹀墠闈竴涓弽鏂滄潬 (\) 琛ㄧず涓涓潯鐩殑寤剁畫銆?etc/inittab 鏂囦歡涓殑鏉$洰鏁扮洰娌℃湁闄愬埗錛堣屼笉鏄寚鏉$洰鐨勬渶澶ч暱搴︼級銆傛潯鐩殑鏈澶ч暱搴︽槸 1024 涓瓧絎︺?/font>
鏉$洰瀛楁鏈夛細Identifier 錛?鏍囪瘑鍞竴瀵硅薄鐨勪竴涓?1-4 浣嶅瓧絎︾殑瀛楁銆?br>RunLevel 錛?璇ユ潯鐩繍琛岀殑綰у埆銆?br>榪愯綰у埆鏈変笅鍒楀睘鎬э細 - 榪愯綰у埆鏈夋晥鍦扮鍚堢郴緇熻繘紼嬬殑閰嶇疆銆?br> - 鐢?init 鍛戒護鍚姩鐨勬瘡涓涓繘紼嬮兘琚垎閰嶄竴涓垨澶氫釜璇ヨ繘紼嬪彲瀛樺湪浜庝箣鐨勮繍琛岀駭鍒?br> - 榪愯綰у埆鐢?0-9 鐨勬暟瀛楁潵琛ㄧず銆備緥濡傦紝濡傛灉緋葷粺榪愯浜庣駭鍒?1錛屽彧鏈夊湪榪愯綰у埆瀛楁鏈?1 鐨勯偅浜涙潯鐩鍚姩銆?br> - 璇鋒眰 init 鍛戒護鏀瑰彉榪愯綰у埆鏃訛紝鏉$洰涓繍琛岀駭鍒瓧孌典笌鐩爣榪愯綰у埆涓嶅尮閰嶇殑鎵鏈夎繘紼嬮兘浼氭敹鍒頒竴鏉¤鍛婁俊鍙?(SIGTERM)錛屽湪榪涚▼琚垹闄ょ鍙鳳薊kill signal (SIGKILL)錛藉己琛岀粓姝㈠墠錛屾湁20縐掔殑瀹介檺鏈熴?br> - 榪愯綰у埆瀛楁鍙負涓涓繘紼嬪畾涔夊涓繍琛岀駭鍒紝鍙互0-9鐨勪換鎰忕粍鍚堛傚鏋滄病鏈夋寚瀹氳繍琛岀駭鍒紝榪涚▼鍋囧畾鍦ㄦ墍鏈夌殑榪愯綰у埆鏈夋晥銆?br> - 榪樻湁鍏朵粬鍥涗釜鍊間細鍑虹幇鍦ㄨ繍琛岀駭鍒瓧孌碉紝鍗充嬌浠栦滑騫朵笉鏄湡姝g殑榪愯綰у埆錛歛, b, c 鍜?h銆傚湪榪愯綰у埆瀛楁鏈夎繖浜涘瓧絎︾殑鏉$洰浠呬粎鍦╰elinit 鍛戒護璇鋒眰鏃舵墠榪愯錛堜笌褰撳墠鐨勭郴緇熻繍琛岀駭鍒棤鍏籌級銆備粬浠笉鍚屼簬init鍛戒護鐨勮繍琛岀駭鍒紝init鍛戒護姘歌繙涓嶈兘榪涘叆a, b, c, h 榪愯綰у埆銆傚茍涓旓紝鎵鏈夎繖浜涜繘紼嬬殑榪愯璇鋒眰閮戒笉鏀瑰彉褰撳墠鐨勮繍琛岀駭鍒傛澶栵紝init 鍛戒護鏀瑰彉綰у埆鏃訛紝鐢盿, b, c 鍛戒護鍚姩鐨勮繘紼嬪茍涓嶆柇寮錛坘illed錛夈傚彧鏈夊綋 /etc/inittab 鏂囦歡涓粬浠殑琛屽湪action瀛楁鏍囪涓?off錛屼粬浠殑琛屼粠 /etc/inittab 鏂囦歡涓畬鍏ㄥ垹闄わ紝鎴栬卛nit 鍛戒護榪涘叆鍗曠敤鎴鋒ā寮忥紝榪欎簺榪涚▼鎵嶄細琚腑鏂紙killed錛夈?br>Action : 鍛婄煡 init 鍛戒護濡備綍澶勭悊鍦?process 瀛楁鎸囧畾鐨勮繘紼嬨俰nit 鍛戒護鍙瘑鍒殑 actions 濡備笅錛?br> respawn 錛?濡傛灉榪涚▼涓嶅瓨鍦紝鍒欏惎鍔ㄨ繘紼嬨傚嵈涓嶇瓑寰呰繘紼嬬粓姝紙緇х畫鎵弿 /etc/inittab 鏂囦歡錛夈傚榪涚▼姝繪帀錛屽垯閲嶅惎璇ヨ繘紼嬨傚榪涚▼瀛樺湪錛岀戶緇壂鎻?/etc/inittab 鏂囦歡銆?br> wait 錛?褰?init 鍛戒護榪涘叆鍖歸厤鏌愭潯鐩殑榪愯綰у埆鏃訛紝鍚姩璇ヨ繘紼嬪茍絳夊緟璇ヨ繘紼嬬殑緇堟銆傚綋init鍛戒護澶勪簬鍚屾牱鐨勮繍琛岀駭鍒椂錛屾墍鏈夊 /etc/inittab 鏂囦歡闅忓悗鐨勮鍙栭兘浼氬鑷?init 鍛戒護蹇界暐璇ユ潯鐩?br> once 錛?褰?init 鍛戒護榪涘叆鍖歸厤鏌愭潯鐩殑榪愯綰у埆鏃訛紝鍚姩璇ヨ繘紼嬶紝騫朵笖涓嶇瓑寰呯粓姝€傚綋榪涚▼姝繪帀鏃訛紝涔熶笉閲嶅惎璇ヨ繘紼嬨傚綋緋葷粺榪涘叆涓涓柊鐨勮繍琛岀駭鍒椂錛岃榪涚▼浠嶇劧浠庝箣鍓嶈繍琛岀駭鍒殑鍙樺寲榪愯錛岀▼搴忎篃涓嶉噸鍚?br> boot 錛?鍙湪緋葷粺寮曞榪囩▼涓繍琛岀殑鏉$洰錛岃繖浜涜繘紼嬫槸緋葷粺鍚姩榪囩▼涓紝init 鍛戒護浠?/etc/inittab 鏂囦歡涓鍙栫殑銆傚惎鍔ㄨ榪涚▼錛屼笉絳夊緟榪涚▼緇堟錛屽茍涓旇繘紼嬫鎺夋椂錛屼篃涓嶉噸鍚繘紼嬨傛湁鎰忎箟鐨勬寚瀵間緷嬈′負錛岃繍琛岀駭鍒簲涓洪粯璁わ紝鎴栬呭繀欏諱笌緋葷粺寮曞鏃?init 鍛戒護鐨勮繍琛岀駭鍒尮閰嶃傛 action 瀵逛簬緋葷粺紜歡閲嶅惎鍚庣殑鍒濆鍖栧姛鑳介潪甯告湁鐢ㄣ?br> bootwait 錛?緋葷粺寮曞鍚庯紝init 鍛戒護浠庡崟鐢ㄦ埛鍒板鐢ㄦ埛鐘舵侊紝絎竴嬈¤繍琛岀殑鏉$洰銆傚惎鍔ㄨ榪涚▼錛屽茍絳夊叾緇堟錛岃繘紼嬫鏃訛紝涓嶉噸鍚榪涚▼銆傚鏋?initdefault涓?2 錛屽垯緋葷粺寮曞鍚庣洿鎺ヨ繍琛岃榪涚▼銆?br> powerfail 錛?鍙湁褰?init 鍛戒護鏀跺埌涓涓數(shù)婧愭晠闅滀俊鍙?SIGPWR)鐨勬椂鍊欙紝鎵嶆墽琛屼笌姝ゆ潯鐩浉鍏崇殑榪涚▼銆?br> powerwait 錛?鍙湁褰?init 鍛戒護鏀跺埌涓涓數(shù)婧愭晠闅滀俊鍙?SIGPWR)鐨勬椂鍊欙紝鎵嶆墽琛屼笌姝ゆ潯鐩浉鍏崇殑榪涚▼銆傚茍絳夎榪涚▼緇堟錛屾墠緇х畫澶勭悊 /etc/inittab 鏂囦歡銆?br> off 錛?濡傛灉涓庤鏉$洰鐩稿叧鐨勮繘紼嬪綋鍓嶆鍦ㄨ繍琛岋紝鍙戦佷竴涓鍛婁俊鍙?SIGTERM)錛岀劧鍚庣瓑寰?20 縐掓墠鐢?kill 淇″彿錛圫IGKILL錛夌粓姝㈣榪涚▼銆傚鏋滆繘紼嬩笉鍦ㄨ繍琛岋紝蹇界暐璇ユ潯鐩?br> ondemand 錛?鍔熻兘涓婁笌 respawn 鐩稿悓錛屼笉榪囷紝姝?action 搴旂敤 a, b, 鎴?c 鍊鹼紝鑰屼笉鐢ㄨ繍琛岀駭鍒?br> initdefault 錛?init 鍛戒護鍙湪 鏈鍒濊皟鐢ㄦ椂鎵嶆壂鎻忎笌姝?action 鐩稿叧鐨勬潯鐩傚鏋滃瓨鍦紝init 鍛戒護浣跨敤璇ユ潯鐩潵鍐沖畾鍒濆榪涘叆鐨勮繍琛岀駭鍒備竴鑸儏鍐典笅錛屼嬌鐢╮un-level 瀛楁涓寚瀹氱殑鏈楂樿繍琛岀駭鍒潵浣滀負鍒濆鐘舵併傚鏋滆繍琛岀駭鍒瓧孌典負絀猴紝鍒欒浣?123456789錛涘洜姝わ紝init 鍛戒護榪涘叆榪愯綰у埆 9 銆傚彟澶栵紝濡傛灉 init 鍛戒護鍦?/etc/inittab 鏂囦歡涓壘涓嶅埌initdefault 鏉$洰錛屽垯鍦ㄥ紩瀵兼椂鍚戠敤鎴瘋姹備竴涓垵濮嬬殑榪愯綰у埆銆?br> sysinit 錛?姝ょ被鍨嬬殑鏉$洰鍦ㄧ櫥褰曞墠 init 鍛戒護姝h璁塊棶鎺у埗鍙頒箣鍓嶈鎵ц銆傝鏉$洰鍙鐢ㄦ潵鍒濆鍖栬澶囷紝init 鍛戒護鍙兘浼氶拡瀵硅繖浜涜澶囪闂繍琛岀駭鍒傝繖浜涙潯鐩鎵ц錛屽茍絳夊緟瀹屾垚鍚庢墠緇х畫銆?/font>
Command 錛?鍙墽琛岀殑澹籌紙shell錛夊懡浠ゃ傛暣涓?command 瀛楁浠?exec 涓哄墠緙錛屽茍浼犵粰涓涓?forked sh鎴愪負 sh -c exec 鍛戒護銆備換浣曞悎娉曠殑 sh 鍛戒護璇硶閮藉彲鍑虹幇鍦ㄨ瀛楁銆傚茍鍙敤 # 鎻掑叆娉ㄩ噴銆?/font>
getty 鍛戒護瑕嗗啓 /etc/inittab 鏂囦歡涓嚭鐜板湪瀹冧箣鍓嶆墍鏈夊懡浠ょ殑杈撳嚭銆傝鍦ㄥ紩瀵兼棩蹇椾腑璁板綍榪欎簺鍛戒護鐨勮緭鍑猴紝鍙緭閫佽繖浜涜緭鍑哄埌 alog -tboot 鍛戒護銆?/font>
褰?init 鍛戒護姝e湪澶勭悊 inittab 鏉$洰鏃訛紝stdin, stdout, 鍜?stderr 榪欎簺鏂囦歡鎻忚堪絎︼紙file descriptors錛夊彲鑳芥槸涓嶅彲鐢ㄧ殑銆傛墍鏈夊啓鍏?stdout 鎴?stderr 鐨勬潯鐩笉璧蜂綔鐢紝闄ら潪鎶婅緭鍑洪噸瀹氬悜鍒頒竴涓枃浠舵垨鑰呭埌 /dev/console銆?/font>
涓嬪垪鍛戒護鏄敮涓鏀寔鍦?/etc/inittab 鏂囦歡涓慨鏀硅褰曠殑鏂規(guī)硶錛?br>mkitab錛?鎶婅褰曟坊鍔犲埌 /etc/inittab 鏂囦歡銆?br>lsitab錛?鍒楀嚭 /etc/inittab 鏂囦歡涓殑璁板綍銆?br>chitab錛?淇敼 /etc/inittab 鏂囦歡涓殑璁板綍銆?br>rmitab錛?浠?/etc/inittab 鏂囦歡涓垹闄よ褰曘?/font>
渚嬪錛屾兂鍦?/etc/inittab 鏂囦歡涓坊鍔犱竴鏉¤褰曪紝浠ヨ繍琛岀駭鍒?錛坮un level 2錛夎繍琛?find 鍛戒護騫朵嬌涔嬩竴鏃﹀畬鎴愬氨鍐嶆鍚姩銆?br>1. 榪愯 ps 鍛戒護錛屽彧鏄劇ず鍖呭惈 find 鐨勮繘紼嬶細 # ps -ef | grep find root 19750 13964 0 10:47:23 pts/0 0:00 grep find # 2. 浣跨敤 mkitab 鍛戒護錛屽湪 /etc/inittab 鏂囦歡涓坊鍔犱竴涓悕涓?xcmd 鐨勮褰曪細 # mkitab "xcmd:2:respawn:find / -type f > /dev/null 2>&1" 3. 浣跨敤 lsitab 鍛戒護鏄劇ず鏂拌褰曪細 # lsitab xcmd xcmd:2:respawn:find / -type f > /dev/null 2>&1 # 4. 鏌ョ湅榪涚▼錛?br># ps -ef | grep find root 25462 1 6 10:56:58 - 0:00 find / -type f root 28002 13964 0 10:57:00 pts/0 0:00 grep find # 5. 鍙栨秷 find 鍛戒護榪涚▼錛?br># kill 25462 6. 鏌ョ湅榪涚▼錛?br># ps -ef | grep find root 23538 13964 0 10:58:24 pts/0 0:00 grep find root 28966 1 4 10:58:21 - 0:00 find / -type f #
鏈緥涓紝鐢變簬 action 瀛楁琚厤緗?respawn錛屾晠鑰屾瘡涓嬈¤鍛戒護涓瀹屾垚錛屼竴涓柊榪涚▼灝變細鍚姩銆?/font>
璇ヨ繘紼嬪皢緇х畫鍐嶇敓 錛坮e-spawning錛夛紝闄ら潪淇敼 action 瀛楁錛屼緥濡傦細 1. 鎶婅褰?xcmd 鐨?action 瀛楁鐢?respawn 淇敼涓?once錛?br># chitab "xcmd:2:once:find / -type f > /dev/null 2>&1" 2. 鏌ョ湅榪涚▼錛?br># ps -ef | grep find root 20378 13964 0 11:07:20 pts/0 0:00 grep find root 28970 1 4 11:05:46 - 0:03 find / -type f 3. 鍙栨秷 find 鍛戒護榪涚▼錛?br># kill 28970 4. 鏌ョ湅榪涚▼錛?br># ps -ef | grep find root 28972 13964 0 11:07:33 pts/0 0:00 grep find #
瑕佷粠 /etc/inittab 鏂囦歡涓垹闄よ璁板綍錛屽彲浣跨敤 rmitab 鍛戒護銆備緥濡傦細 # rmitab xcmd # lsitab xcmd #
/etc/inittab 鏉$洰鐨勬搴?/font>
/etc/inittab 鏂囦歡涓殑鍩烘湰榪涚▼鏉$洰嬈″簭瀹夎濡備笅錛?br>1. initdefault 2. sysinit 3. Powerfailure Detection (powerfail) 4. Multiuser check (rc) 5. /etc/firstboot (fbcheck) 6. System Resource Controller (srcmstr) 7. Start TCP/IP daemons (rctcpip) 8. Start NFS daemons (rcnfs) 9. cron 10.pb cleanup (piobe) 11.getty for the console (cons)
緋葷粺璧勬簮鎺у埗鍣?(SRC)蹇呴』鍦?/etc/inittab 鏂囦歡鐨勫紑澶撮檮榪戝氨琚惎鍔紝鍥犱負鍚姩鍏朵粬鐨勮繘紼嬮渶瑕丼RC榪涚▼錛圖aemon錛夈?br>鐢變簬NFS闇瑕乀CP/IP榪涚▼錛圖aemon錛夋墠鑳芥甯歌繍琛岋紝鎵浠CP/IP榪涚▼蹇呴』鍦∟FS榪涚▼涔嬪墠琚惎鍔ㄣ?br>/etc/inittab 鏂囦歡涓殑鏉$洰鎸夌浉浜掍緷璧栨ф帓搴忥紝灝辨槸璇達紝濡傛灉涓涓繘紼嬶紙process2錛夐渶瑕佸彟澶栦竴涓繘紼嬶紙process1錛夊瓨鍦ㄦ墠鑳芥甯歌繍琛岋紝閭d箞鍦?/etc/inittab鏂囦歡涓紝process1鐨勬潯鐩簲璇ュ湪process2鐨勬潯鐩箣鍓嶃?/font>
]]> crontab鍛戒護璇﹁В錛堣漿甯栵級 http://m.shnenglu.com/cc/archive/2008/09/08/61304.html鍖楅涔嬬007 鍖楅涔嬬007 Mon, 08 Sep 2008 06:18:00 GMT http://m.shnenglu.com/cc/archive/2008/09/08/61304.html http://m.shnenglu.com/cc/comments/61304.html http://m.shnenglu.com/cc/archive/2008/09/08/61304.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/61304.html http://m.shnenglu.com/cc/services/trackbacks/61304.html crontab鍛戒護鏈変笁縐嶅艦寮忕殑鍛戒護琛岀粨鏋勶細 crontab [-u user] [file] crontab [-u user] [-e|-l|-r] crontab -l -u [-e|-l|-r] 絎竴涓懡浠よ涓紝file鏄懡浠ゆ枃浠剁殑鍚嶅瓧銆傚鏋滃湪鍛戒護琛屼腑鎸囧畾浜嗚繖涓枃浠訛紝閭d箞鎵цcrontab鍛戒護錛屽垯灝嗚繖涓枃浠舵嫹璐濆埌crontabs鐩綍涓嬶紱濡傛灉鍦ㄥ懡浠よ涓病鏈夊埗瀹氳繖涓枃浠訛紝crontab鍛戒護灝嗘帴鍙楁爣鍑嗚緭鍏ワ紙閿洏錛変笂閿叆鐨勫懡浠わ紝騫跺皢浠栦滑涔熷瓨鏀懼湪crontab鐩綍涓嬨? 鍛戒護琛屼腑-r閫夐」鐨勪綔鐢ㄦ槸浠?usr/spool/cron/crontabs鐩綍涓嬪垹闄ょ敤鎴峰畾涔夌殑鏂囦歡crontab錛? 鍛戒護琛屼腑-l閫夐」鐨勪綔鐢ㄦ槸鏄劇ず鐢ㄦ埛crontab鏂囦歡鐨勫唴瀹廣? 浣跨敤鍛戒護crontab -u user -e鍛戒護緙栬緫鐢ㄦ埛user鐨刢ron(c)浣滀笟銆傜敤鎴烽氳繃緙栬緫鏂囦歡鏉ュ鍔犳垨淇敼浠諱綍浣滀笟璇鋒眰銆? 鎵ц鍛戒護crontab -u user -r鍗沖彲鍒犻櫎褰撳墠鐢ㄦ埛鐨勬墍鏈夌殑cron浣滀笟銆? 浣滀笟涓庡畠浠瀹氱殑鏃墮棿鍌ㄥ瓨鍦ㄦ枃浠?usr/spool/cron/crontabs/username閲屻倁sername浣跨敤鎴峰悕錛屽湪鐩稿簲鐨勬枃浠朵腑瀛樻斁鐫璇ョ敤鎴鋒墍瑕佽繍琛岀殑鍛戒護銆傚懡浠ゆ墽琛岀殑緇撴灉錛屾棤璁烘槸鏍囧噯杈撳嚭榪樻槸閿欒杈撳嚭錛岄兘灝嗕互閭歡褰㈠紡鍙戠粰鐢ㄦ埛銆傛枃浠墮噷鐨勬瘡涓涓姹傚繀欏誨寘鍚互spaces鍜宼abs鍒嗗壊鐨勫叚涓煙銆傚墠浜斾釜瀛楁鍙互鍙栨暣鏁板鹼紝鎸囧畾浣曟椂寮濮嬪伐浣滐紝絎叚涓煙鏄瓧絎︿覆錛岀О涓哄懡浠ゅ瓧孌碉紝鍏朵腑鍖呮嫭浜哻rontab璋冨害鎵ц鐨勫懡浠ゃ? 絎竴閬撶浜斾釜瀛楁鐨勬暣鏁板彇鍊艱寖鍥村強鎰忎箟鏄細 0锝?9 琛ㄧず鍒? 1锝?3 琛ㄧず灝忔椂 1锝?1 琛ㄧず鏃? 1锝?2 琛ㄧず鏈堜喚 0锝? 琛ㄧず鏄熸湡錛堝叾涓?琛ㄧず鏄熸湡鏃ワ級 /usr/lib/cron/cron.allow琛ㄧず璋佽兘浣跨敤crontab鍛戒護銆傚鏋滃畠鏄竴涓┖鏂囦歡琛ㄦ槑娌℃湁涓涓敤鎴瘋兘瀹夋帓浣滀笟銆傚鏋滆繖涓枃浠朵笉瀛樺湪錛岃屾湁鍙﹀涓涓枃浠?usr/lib/cron/cron.deny,鍒欏彧鏈変笉鍖呮嫭鍦ㄨ繖涓枃浠朵腑鐨勭敤鎴鋒墠鍙互浣跨敤crontab鍛戒護銆傚鏋滃畠鏄竴涓┖鏂囦歡琛ㄦ槑浠諱綍鐢ㄦ埛閮藉彲瀹夋帓浣滀笟銆備袱涓枃浠跺悓鏃跺瓨鍦ㄦ椂cron.allow浼樺厛錛屽鏋滈兘涓嶅瓨鍦紝鍙湁瓚呯駭鐢ㄦ埛鍙互瀹夋帓浣滀笟銆?br> ]]>QT Designer涓畨瑁匭WT鎻掍歡 http://m.shnenglu.com/cc/archive/2008/09/05/60987.html鍖楅涔嬬007 鍖楅涔嬬007 Fri, 05 Sep 2008 04:54:00 GMT http://m.shnenglu.com/cc/archive/2008/09/05/60987.html http://m.shnenglu.com/cc/comments/60987.html http://m.shnenglu.com/cc/archive/2008/09/05/60987.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/60987.html http://m.shnenglu.com/cc/services/trackbacks/60987.html QWT鏄竴濂楅潪甯鎬笉閿欑殑寮鍙戝簱錛屽畠鑳界粨鍚圦T寮鍙戯紝鍋氬嚭闈炲父濂界殑鏇茬嚎錛屽埢搴︼紝琛ㄧ洏絳夋晥鏋滄潵銆?br> qwt鐨勪笅杞戒互鍙婂姩鎬侀摼鎺ュ簱鐨勭紪璇戠瓑榪欓噷灝變笉鍋氫粙緇嶄簡銆傚湪婧愮爜鐩綍涓嬪彲浠ユ壘鍒癲esigner鐩綍錛屽叾涓湁鎻掍歡鐨勬簮鐮侊紝緙栬瘧瀹屼箣鍚庡氨浼氱敓鎴恞wtplugin.dll鍜宷wtplugin.lib錛屾妸浠栦滑鎷瘋礉鍒?font face=Arial>$(QTDIR)\plugins\designer鐩綍涓嬶紝閲嶆柊鍚姩QT Designer錛屽氨浼氱湅鍒癟oolBox闈㈡澘涓鍑轟簡Qwt綾伙紝濡備笅鍥炬墍紺恒備互涓婂湪QT3.3.4涓嬫祴璇曢氳繃錛?a style="COLOR: red" href="http://m.shnenglu.com/Files/cc/qwtplugin.rar">qwtplugin.dll鍜宷wtplugin.lib涓嬭澆
]]> C瀹炵幇杞姩鐨勭煭媯?/title> http://m.shnenglu.com/cc/archive/2008/08/29/60340.html鍖楅涔嬬007 鍖楅涔嬬007 Fri, 29 Aug 2008 03:18:00 GMT http://m.shnenglu.com/cc/archive/2008/08/29/60340.html http://m.shnenglu.com/cc/comments/60340.html http://m.shnenglu.com/cc/archive/2008/08/29/60340.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/60340.html http://m.shnenglu.com/cc/services/trackbacks/60340.html 鍦║NIX鐜涓嬬殑鏂囧瓧鐣岄潰宸ヤ綔鏃訛紝濡傝繃紼嬪簭鍦ㄨ繍琛岀瓑寰咃紝鍙兘灝變細鐪嬪埌杞姩鐨勭煭媯掞紝琛ㄧず紼嬪簭姝e湪鎵ц涓紝浠婂ぉ鍒氬ソ鐪嬪埌璧勬枡錛屼笂闈㈣浜嗕竴涓嬶紝鎴戝氨鎸夌収鎰忔濆啓浜嗕竴涓紝涓嶇煡閬撳埆鐨勬槸鎬庝箞瀹炵幇鐨勶紝鍙嶆涓嬮潰鐨勪唬鐮佺湅浼艱兘宸ヤ綔浜嗭紝涓嶈繃姝e紡浣跨敤鍙兘榪橀渶瑕佹敼榪涘惂銆?br>
#include < stdio.h > int main() { int i = 0 ; char c; while ( 1 ) { i ++ ; if (i % 4 == 0 ) c = ' - ' ; else if (i % 4 == 1 ) c = ' \\ ' ; else if (i % 4 == 2 ) c = ' | ' ; else if (i % 4 == 3 ) c = ' / ' ; printf( " %c\b " ,c); sleep( 300 ); } system(" pause " ); return 0 ; }
浠ヤ笂浠g爜鍦―EV-CPP 4.9.9.2涓祴璇曢氳繃 ]]> C璇█鑾峰彇鐩綍涓枃浠跺悕 http://m.shnenglu.com/cc/archive/2008/08/28/60292.html鍖楅涔嬬007 鍖楅涔嬬007 Thu, 28 Aug 2008 10:10:00 GMT http://m.shnenglu.com/cc/archive/2008/08/28/60292.html http://m.shnenglu.com/cc/comments/60292.html http://m.shnenglu.com/cc/archive/2008/08/28/60292.html#Feedback 2 http://m.shnenglu.com/cc/comments/commentRss/60292.html http://m.shnenglu.com/cc/services/trackbacks/60292.html #include < stdio.h > #include < dirent.h > #include < string .h > typedef struct FileList { char filename[ 64 ]; struct FileList * next; } FILENODE; FILENODE * getFiles( char * dir /**/ /* 鏂囩洰褰?/span>*/ ) { DIR * directory_pointer; struct dirent * entry; directory_pointer = opendir(dir); struct FileList start; struct FileList * filesNode; start.next = NULL; filesNode =& start; while ((entry = readdir(directory_pointer)) != NULL) { filesNode -> next = ( struct FileList * )malloc( sizeof ( struct FileList)); filesNode = filesNode -> next; strcpy(filesNode -> filename,entry -> d_name); filesNode -> next = NULL; } closedir(directory_pointer); filesNode = start.next; return filesNode; } int main() { struct FileList * filesNode; char dir[ 100 ] = " D:\\down " ; filesNode = getFiles(dir); if (filesNode == NULL) { printf( " 娌℃湁鎴愬姛 " ); return 0 ; } while (filesNode) { printf( " %s\n " ,filesNode -> filename); filesNode = filesNode -> next; } system( " pause " ); return 0 ; } ]]>Broadcom NetXtrem II緗戝崱Linux瀹夎鎸囧崡錛堣漿杞斤級 http://m.shnenglu.com/cc/archive/2008/05/29/51494.html鍖楅涔嬬007 鍖楅涔嬬007 Thu, 29 May 2008 09:01:00 GMT http://m.shnenglu.com/cc/archive/2008/05/29/51494.html http://m.shnenglu.com/cc/comments/51494.html http://m.shnenglu.com/cc/archive/2008/05/29/51494.html#Feedback 0 http://m.shnenglu.com/cc/comments/commentRss/51494.html http://m.shnenglu.com/cc/services/trackbacks/51494.html
Broadcom NetXtrem II緗戝崱Linux瀹夎鎸囧崡
閫傜敤鏈哄瀷:
鎵鏈塀ladeCenter HS21; 鎵鏈塀ladeCenter LS21; 鎵鏈塀ladeCenter LS41; 鎵鏈塖ystem x3550; 鎵鏈塖ystem x3650; 鎵鏈塖ystem x3655; 鎵鏈塖ystem x3755
Broadcom NetXtreme II GbE緗戝崱椹卞姩鏈変袱縐嶆牸寮忥細source RPM 鍜宼ar鏍煎紡銆傛枃浠跺悕鍒嗗埆涓篵nx2-<version>.src.rpm 鍜?bnx2-<version>.tar.gz 涓嬭澆鍦板潃錛歨ttp://www-1.ibm.com/support/docview.wss?uid=psg1MIGR-64538 Source RPM 椹卞姩鍖呯殑瀹夎姝ラ ============================= 1. 瀹夎source RPM鍖咃細 rpm -ivh bnx2-<version>.src.rpm 2. 榪涘叆/usr/src璺緞騫剁紪璇?/font>cd /usr/src/{redhat,OpenLinux,turbo,packages,rpm ..} rpm -bb SPECS/bnx2.spec 鎴栬?/font>rpmbuild -bb SPECS/bnx2.spec (閽堝RPM version 4.x.x) 娉ㄦ剰錛氫笉鍚屽唴鏍哥殑linux鐗堟湰錛屽叾rpm璺緞涓嶅悓 3. 瀹夎鍒氬垰緙栬瘧濂界殑鍖?/font>rpm -ivh RPMS/i386/bnx2-<version>.i386.rpm 椹卞姩琚畨瑁呭埌濡備笅璺緞 瀵逛簬2.4.x kernels: /lib/modules/<kernel_version>/kernel/drivers/net/bnx2.o 瀵逛簬2.6.0 kernels: /lib/modules/<kernel_version>/kernel/drivers/net/bnx2.ko 4. 鍔犺澆椹卞姩: insmod bnx2.o 鎴?/font>insmod bnx2.ko (鍦?2.6.x kernels) 鎴?/font>modprobe bnx2 5. 閰嶇疆緗戝崱鍦板潃銆佺綉鍏崇瓑絳?/font>TAR椹卞姩鍖呯殑瀹夎姝ラ ============================= 1. 鍒涘緩涓涓洰褰曞茍灝嗘枃浠惰В鍖?/font>tar xvzf bnx2-<version>.tar.gz 2. 緙栬瘧椹卞姩bnx2.o (鎴朾nx2.ko)錛岀敓鎴愬彲鍔犺澆鐨勬ā鍧?/font>cd src make 3. 閫氳繃鍔犺澆妯″潡瀵瑰叾榪涜嫻嬭瘯 insmod bnx2.o 鎴?/font>insmod bnx2.ko (鍦?.6.x kernels) 鎴?/font>insmod bnx2 4. 瀹夎椹卞姩 make install 椹卞姩琚畨瑁呯殑浣嶇疆涓嶳PM鏂瑰紡瀹夎鐨勪綅緗竴鏍?/font>5. 閰嶇疆緗戝崱鍦板潃銆佺綉鍏崇瓑絳?/font>
]]> 青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
午夜精品久久久久久 |
亚洲午夜精品 |
欧美韩日精品 |
欧美黄色视屏 |
欧美极品影院 |
国产精品毛片在线看 |
国产免费成人在线视频 |
国产日韩精品一区二区浪潮av |
国产精品免费网站在线观看 |
国产欧美在线看 |
在线播放亚洲 |
日韩西西人体444www |
亚洲女爱视频在线 |
久久免费精品日本久久中文字幕 |
免费观看日韩 |
一本大道久久精品懂色aⅴ
|
一区二区三区日韩在线观看
|
老司机凹凸av亚洲导航 |
亚洲国产精品久久精品怡红院 |
亚洲欧洲日韩在线 |
亚洲无限av看 |
麻豆av一区二区三区久久 |
欧美国产第一页 |
国产欧美日韩在线视频 |
亚洲人成在线影院 |
久久er99精品 |
亚洲美女av黄 |
久久久在线视频 |
欧美网站在线观看 |
亚洲国产精品一区二区久 |
亚洲一区欧美二区 |
激情六月综合 |
亚洲欧美在线看 |
久久久久久免费 |
亚洲精品乱码 |
久久精品三级 |
国产精品日本一区二区 |
亚洲欧洲午夜 |
久久综合导航 |
亚洲永久在线观看 |
欧美电影电视剧在线观看 |
国产女主播一区二区 |
一区二区三区视频免费在线观看 |
久久亚洲国产成人 |
午夜精品一区二区在线观看 |
欧美日韩情趣电影 |
亚洲精品一区中文 |
欧美成人黄色小视频 |
欧美一区二区高清在线观看 |
欧美日韩一区三区四区 |
亚洲精品少妇30p |
欧美a级片网 |
久久精品夜色噜噜亚洲a∨ |
国产精品一级 |
午夜亚洲视频 |
亚洲午夜女主播在线直播 |
欧美精品日日鲁夜夜添 |
亚洲激情电影中文字幕 |
欧美a级在线 |
久久综合网色—综合色88 |
国内一区二区在线视频观看 |
久久精品91 |
亚洲欧美日韩视频一区 |
国产精品亚洲一区 |
新67194成人永久网站 |
亚洲视频在线播放 |
国产精品久久久久av |
亚洲在线国产日韩欧美 |
9人人澡人人爽人人精品 |
欧美日韩一区二区免费在线观看 |
一区二区三区视频在线播放 |
妖精成人www高清在线观看 |
国产精品videossex久久发布 |
亚洲网在线观看 |
亚洲一区二区三区四区五区黄 |
国产精品视频区 |
久久久久九九九 |
久久久综合香蕉尹人综合网 |
亚洲国产小视频 |
日韩一区二区高清 |
国产精品日韩专区 |
蜜桃精品久久久久久久免费影院 |
蜜桃av噜噜一区 |
一区二区三区视频在线观看 |
一个色综合导航 |
国产裸体写真av一区二区 |
老司机精品久久 |
欧美精品日韩一本 |
欧美在线视频全部完 |
久久视频一区二区 |
亚洲少妇中出一区 |
亚洲专区在线 |
久久久久久91香蕉国产 |
国内精品视频666 |
欧美激情一区二区三区在线 |
欧美人妖在线观看 |
久久精品国产一区二区电影 |
久久在线精品 |
亚洲免费在线电影 |
久久亚洲精品伦理 |
亚洲综合三区 |
欧美.www |
久久精品天堂 |
欧美日韩伦理在线免费 |
久久精品99国产精品日本
|
亚洲黄色毛片 |
国产日韩欧美 |
99re66热这里只有精品3直播 |
国产亚洲欧洲一区高清在线观看 |
亚洲国内高清视频 |
国语精品中文字幕 |
在线一区二区三区四区五区 |
亚洲国产精品视频 |
久久精品一区二区国产 |
亚洲自拍偷拍福利 |
欧美黄色成人网 |
欧美99久久 |
狠狠色噜噜狠狠色综合久
|
亚洲欧美制服另类日韩 |
亚洲免费观看高清完整版在线观看熊
|
国产精品日韩欧美 |
99精品欧美一区二区三区 |
在线播放日韩专区 |
欧美在线日韩精品 |
欧美亚洲在线播放 |
欧美日韩亚洲免费 |
亚洲人成毛片在线播放 |
在线观看三级视频欧美 |
欧美一区二区三区在线 |
欧美伊人久久 |
国产欧美日韩亚洲精品 |
亚洲综合色视频 |
欧美一激情一区二区三区 |
国产精品私人影院 |
亚洲欧美综合另类中字 |
欧美专区福利在线 |
国内一区二区三区在线视频 |
欧美一区国产二区 |
久久久久se |
一区视频在线看 |
久久久久久久欧美精品 |
免费精品视频 |
亚洲欧洲日韩综合二区 |
欧美精品久久99 |
日韩午夜在线视频 |
香蕉av福利精品导航 |
国产精品免费视频xxxx |
亚洲欧美制服另类日韩 |
裸体一区二区三区 |
亚洲精品日产精品乱码不卡 |
欧美精品亚洲二区 |
亚洲一区三区在线观看 |
久久精品国产亚洲一区二区三区 |
在线视频欧美日韩 |
国产精品久久一区主播 |
亚洲视频图片小说 |
久久激情五月婷婷 |
在线日本成人 |
欧美日韩成人一区二区 |
在线视频欧美精品 |
久久人人看视频 |
亚洲日本va午夜在线电影 |
欧美日韩一区二区视频在线观看 |
亚洲视频二区 |
麻豆国产精品777777在线
|
欧美一区永久视频免费观看 |
国产亚洲综合在线 |
你懂的网址国产 欧美 |
亚洲日本va午夜在线影院 |
亚洲欧美变态国产另类 |
国产综合在线视频 |
欧美日韩国产成人在线免费 |
亚洲欧美日韩第一区 |
欧美成人午夜激情 |
午夜精品久久久99热福利 |
又紧又大又爽精品一区二区 |
欧美日韩久久精品 |
久久精品国产精品亚洲 |
99精品欧美一区二区三区综合在线 |
久久久999 |
亚洲午夜av电影 |
亚洲福利免费 |
国产美女一区 |
欧美激情一区二区三区不卡 |
午夜视频久久久 |
日韩视频免费看 |
欧美国产欧美亚洲国产日韩mv天天看完整
|
欧美日韩国产首页在线观看 |
亚洲在线成人 |
亚洲精品国产精品国自产观看浪潮 |
欧美影片第一页 |
在线视频欧美精品 |
亚洲精品1234 |
国产一区二区三区久久久 |
欧美日韩hd |
欧美激情视频一区二区三区在线播放 |
欧美在线关看 |
销魂美女一区二区三区视频在线 |
91久久久久久久久 |
欧美aⅴ一区二区三区视频 |