锘??xml version="1.0" encoding="utf-8" standalone="yes"?> 2.浠庢爣鍑嗗ご鏂囦歡璇磋搗 #ifndef __INCvxWorksh 鏄劇劧錛屽ご鏂囦歡涓殑緙栬瘧瀹?#8220;#ifndef __INCvxWorksh銆?define __INCvxWorksh銆?endif” 鐨勪綔鐢ㄦ槸闃叉璇ュご鏂囦歡琚噸澶嶅紩鐢ㄣ傞偅涔?/font> 鐨勪綔鐢ㄥ張鏄粈涔堝憿錛熸垜浠皢鍦ㄤ笅鏂囦竴涓閬撴潵銆?/font> 3.娣卞眰鎻瘑extern "C" 銆銆extern int a; void foo( int x, int y ); 鍚屾牱鍦幫紝C++涓殑鍙橀噺闄ゆ敮鎸佸眬閮ㄥ彉閲忓錛岃繕鏀寔綾繪垚鍛樺彉閲忓拰鍏ㄥ眬鍙橀噺銆傜敤鎴鋒墍緙栧啓紼嬪簭鐨勭被鎴愬憳鍙橀噺鍙兘涓庡叏灞鍙橀噺鍚屽悕錛屾垜浠互"."鏉ュ尯鍒嗐傝屾湰璐ㄤ笂錛岀紪璇戝櫒鍦ㄨ繘琛岀紪璇戞椂錛屼笌鍑芥暟鐨勫鐞嗙浉浼鹼紝涔熶負綾諱腑鐨勫彉閲忓彇浜嗕竴涓嫭涓鏃犱簩鐨勫悕瀛楋紝榪欎釜鍚嶅瓧涓庣敤鎴風▼搴忎腑鍚屽悕鐨勫叏灞鍙橀噺鍚嶅瓧涓嶅悓銆?br> // 妯″潡A澶存枃浠躲moduleA.h // 妯″潡B瀹炵幇鏂囦歡銆moduleB.cpp // 妯″潡A澶存枃浠躲moduleA.h 4.extern "C"鐨勬儻鐢ㄦ硶 extern "C" /* c璇█澶存枃浠訛細cExample.h */ //C++澶存枃浠?cppExample.h Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=763734
#include <iostream>
2
3
using namespace::std;
4
//in function ,will be initialized.Include main fuction.
5
//out of function, willn't be.
6
void fun()
7

{
8
int A[4] =
{};//call initialize
9
int C[4] =
{1};
10
cout <<"funA:"<<A[0]<<","<<A[1]<<endl;
11
cout <<"funC:"<<C[0]<<","<<C[1]<<endl;
12
}
13
int B[4];
14
int main()
15

{
16
17
int A[8];// in main function
18
fun();
19
cout <<"main funA:"<<A[0]<<","<<A[1]<<endl;
20
cout <<"GlobalB:"<<B[0]<<","<<B[1]<<endl;
21
22
getchar();
23
return 0;
24
}
25

]]>
int a =2, b=3, c = 5, d = 6, e = 0, f = 9;
2
e = a > b?
3
(c = 6, d = 7)
4
:(c = 7, d = 8, f);
5
cout <<c<<d<<e;
]]>
char* test[] =
{"1", "12", "123"};
2
int a,b,c, d, e;
3
a = sizeof(test);
4
b = sizeof(test[0]);
5
c = sizeof(test[1]);
6
d = sizeof(test[2]);
7
e = a/b;
8
char f = test[0][0];
9
char g = test[0][1];
10
char h = test[0][2];
11
char i = test[0][3];
12
printf("a%d,b%d,c%d,d%d,e%d, f%d, g%d, h%d, i%d", a, b, c, d, e, f, g, h, i);
13
14
typedef struct
15
{
16
char a[5];
17
char b[6];
18
}teststruct;
19
20
teststruct t1=
{"1", "a"};
21
teststruct testst[]=
{
{"1", "a"},
{"12", "ab"},
{"123", "abc"},
{"1234", "abcd"}};
22
teststruct t2;
23
printf("%s, %s, %s, %s", t2.a, t2.b, t1.a, t1.b);
24
printf("%d, %d, %d, %d, %d, %d", testst[1].a[0], testst[1].b[0], testst[1].a[1], testst[1].b[1], testst[1].a[4], testst[1].b[4]);
25
]]>
銆銆C++璇█鐨勫垱寤哄垵琛鋒槸“a better C”錛屼絾鏄繖騫朵笉鎰忓懗鐫C++涓被浼糃璇█鐨勫叏灞鍙橀噺鍜屽嚱鏁版墍閲囩敤鐨勭紪璇戝拰榪炴帴鏂瑰紡涓嶤璇█瀹屽叏鐩稿悓銆備綔涓轟竴縐嶆涓嶤鍏煎鐨勮璦錛孋++淇濈暀浜嗕竴閮ㄥ垎榪囩▼寮忚璦鐨勭壒鐐癸紙琚笘浜虹О涓?#8220;涓嶅交搴曞湴闈㈠悜瀵硅薄”錛夛紝鍥犺屽畠鍙互瀹氫箟涓嶅睘浜庝換浣曠被鐨勫叏灞鍙橀噺鍜屽嚱鏁般備絾鏄紝C++姣曠珶鏄竴縐嶉潰鍚戝璞$殑紼嬪簭璁捐璇█錛屼負浜嗘敮鎸佸嚱鏁扮殑閲嶈澆錛孋++瀵瑰叏灞鍑芥暟鐨勫鐞嗘柟寮忎笌C鏈夋槑鏄劇殑涓嶅悓銆?/font>
鏌愪紒涓氭浘緇忕粰鍑哄涓嬬殑涓閬撻潰璇曢錛氫負浠涔堟爣鍑嗗ご鏂囦歡閮芥湁綾諱技浠ヤ笅鐨勭粨鏋勶紵
#define __INCvxWorksh
#ifdef __cplusplus
extern "C" {
#endif
/*...*/
#ifdef __cplusplus
}
#endif
#endif /* __INCvxWorksh */
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
銆銆extern "C" 鍖呭惈鍙岄噸鍚箟錛屼粠瀛楅潰涓婂嵆鍙緱鍒幫細棣栧厛錛岃瀹冧慨楗扮殑鐩爣鏄?#8220;extern”鐨勶紱鍏舵錛岃瀹冧慨楗扮殑鐩爣鏄?#8220;C”鐨勩傝鎴戜滑鏉ヨ緇嗚В璇昏繖涓ら噸鍚箟銆?br>
銆銆琚玡xtern "C"闄愬畾鐨勫嚱鏁版垨鍙橀噺鏄痚xtern綾誨瀷鐨勶紱
銆銆extern鏄疌/C++璇█涓〃鏄庡嚱鏁板拰鍏ㄥ眬鍙橀噺浣滅敤鑼冨洿錛堝彲瑙佹э級鐨勫叧閿瓧錛岃鍏抽敭瀛楀憡璇夌紪璇戝櫒錛屽叾澹版槑鐨勫嚱鏁板拰鍙橀噺鍙互鍦ㄦ湰妯″潡鎴栧叾瀹冩ā鍧椾腑浣跨敤銆傝浣忥紝涓嬪垪璇彞錛?br>
銆銆浠呬粎鏄竴涓彉閲忕殑澹版槑錛屽叾騫朵笉鏄湪瀹氫箟鍙橀噺a錛屽茍鏈負a鍒嗛厤鍐呭瓨絀洪棿銆傚彉閲廰鍦ㄦ墍鏈夋ā鍧椾腑浣滀負涓縐嶅叏灞鍙橀噺鍙兘琚畾涔変竴嬈★紝鍚﹀垯浼氬嚭鐜拌繛鎺ラ敊璇?br>
銆銆閫氬父錛屽湪妯″潡鐨勫ご鏂囦歡涓鏈ā鍧楁彁渚涚粰鍏跺畠妯″潡寮曠敤鐨勫嚱鏁板拰鍏ㄥ眬鍙橀噺浠ュ叧閿瓧extern澹版槑銆備緥濡傦紝濡傛灉妯″潡B嬈插紩鐢ㄨ妯″潡A涓畾涔夌殑鍏ㄥ眬鍙橀噺鍜屽嚱鏁版椂鍙渶鍖呭惈妯″潡A鐨勫ご鏂囦歡鍗沖彲銆傝繖鏍鳳紝妯″潡B涓皟鐢ㄦā鍧桝涓殑鍑芥暟鏃訛紝鍦ㄧ紪璇戦樁孌碉紝妯″潡B铏界劧鎵句笉鍒拌鍑芥暟錛屼絾鏄茍涓嶄細鎶ラ敊錛涘畠浼氬湪榪炴帴闃舵涓粠妯″潡A緙栬瘧鐢熸垚鐨勭洰鏍囦唬鐮佷腑鎵懼埌姝ゅ嚱鏁般?br>
銆銆涓巈xtern瀵瑰簲鐨勫叧閿瓧鏄痵tatic錛岃瀹冧慨楗扮殑鍏ㄥ眬鍙橀噺鍜屽嚱鏁板彧鑳藉湪鏈ā鍧椾腑浣跨敤銆傚洜姝わ紝涓涓嚱鏁版垨鍙橀噺鍙彲鑳借鏈ā鍧椾嬌鐢ㄦ椂錛屽叾涓嶅彲鑳借extern “C”淇グ銆?br>
銆銆琚玡xtern "C"淇グ鐨勫彉閲忓拰鍑芥暟鏄寜鐓璇█鏂瑰紡緙栬瘧鍜岃繛鎺ョ殑錛?br>
銆銆鏈姞extern “C”澹版槑鏃剁殑緙栬瘧鏂瑰紡
銆銆棣栧厛鐪嬬湅C++涓綾諱技C鐨勫嚱鏁版槸鎬庢牱緙栬瘧鐨勩?br>
銆銆浣滀負涓縐嶉潰鍚戝璞$殑璇█錛孋++鏀寔鍑芥暟閲嶈澆錛岃岃繃紼嬪紡璇█C鍒欎笉鏀寔銆傚嚱鏁拌C++緙栬瘧鍚庡湪絎﹀彿搴撲腑鐨勫悕瀛椾笌C璇█鐨勪笉鍚屻備緥濡傦紝鍋囪鏌愪釜鍑芥暟鐨勫師鍨嬩負錛?
銆銆璇ュ嚱鏁拌C緙栬瘧鍣ㄧ紪璇戝悗鍦ㄧ鍙峰簱涓殑鍚嶅瓧涓篲foo錛岃孋++緙栬瘧鍣ㄥ垯浼氫駭鐢熷儚_foo_int_int涔嬬被鐨勫悕瀛楋紙涓嶅悓鐨勭紪璇戝櫒鍙兘鐢熸垚鐨勫悕瀛椾笉鍚岋紝浣嗘槸閮介噰鐢ㄤ簡鐩稿悓鐨勬満鍒訛紝鐢熸垚鐨勬柊鍚嶅瓧縐頒負“mangled name”錛夈?br>
銆銆_foo_int_int榪欐牱鐨勫悕瀛楀寘鍚簡鍑芥暟鍚嶃佸嚱鏁板弬鏁版暟閲忓強綾誨瀷淇℃伅錛孋++灝辨槸闈犺繖縐嶆満鍒舵潵瀹炵幇鍑芥暟閲嶈澆鐨勩?/span>渚嬪錛屽湪C++涓紝鍑芥暟void foo( int x, int y )涓巚oid foo( int x, float y )緙栬瘧鐢熸垚鐨勭鍙鋒槸涓嶇浉鍚岀殑錛屽悗鑰呬負_foo_int_float銆?/font>
銆銆鏈姞extern "C"澹版槑鏃剁殑榪炴帴鏂瑰紡
銆銆鍋囪鍦–++涓紝妯″潡A鐨勫ご鏂囦歡濡備笅錛?br>
#ifndef MODULE_A_H
#define MODULE_A_H
int foo( int x, int y );
#endif
銆銆鍦ㄦā鍧桞涓紩鐢ㄨ鍑芥暟錛?br>
#include "moduleA.h"
foo(2,3);
銆銆瀹為檯涓婏紝鍦ㄨ繛鎺ラ樁孌碉紝榪炴帴鍣ㄤ細浠庢ā鍧桝鐢熸垚鐨勭洰鏍囨枃浠秏oduleA.obj涓鎵綺foo_int_int榪欐牱鐨勭鍙鳳紒
銆銆鍔爀xtern "C"澹版槑鍚庣殑緙栬瘧鍜岃繛鎺ユ柟寮?/strong>
銆銆鍔爀xtern "C"澹版槑鍚庯紝妯″潡A鐨勫ご鏂囦歡鍙樹負錛?br>
#ifndef MODULE_A_H
#define MODULE_A_H
extern "C" int foo( int x, int y );
#endif
銆銆鍦ㄦā鍧桞鐨勫疄鐜版枃浠朵腑浠嶇劧璋冪敤foo( 2,3 )錛屽叾緇撴灉鏄細
銆銆錛?錛夋ā鍧桝緙栬瘧鐢熸垚foo鐨勭洰鏍囦唬鐮佹椂錛屾病鏈夊鍏跺悕瀛楄繘琛岀壒孌婂鐞嗭紝閲囩敤浜咰璇█鐨勬柟寮忥紱
銆銆錛?錛夎繛鎺ュ櫒鍦ㄤ負妯″潡B鐨勭洰鏍囦唬鐮佸鎵緁oo(2,3)璋冪敤鏃訛紝瀵繪壘鐨勬槸鏈粡淇敼鐨勭鍙峰悕_foo銆?br>
銆銆濡傛灉鍦ㄦā鍧桝涓嚱鏁板0鏄庝簡foo涓篹xtern "C"綾誨瀷錛岃屾ā鍧桞涓寘鍚殑鏄痚xtern int foo( int x, int y ) 錛屽垯妯″潡B鎵句笉鍒版ā鍧桝涓殑鍑芥暟錛涘弽涔嬩害鐒躲?br>
銆銆鎵浠ワ紝鍙互鐢ㄤ竴鍙ヨ瘽姒傛嫭extern “C”榪欎釜澹版槑鐨勭湡瀹炵洰鐨勶紙浠諱綍璇█涓殑浠諱綍璇硶鐗規х殑璇炵敓閮戒笉鏄殢鎰忚屼負鐨勶紝鏉ユ簮浜庣湡瀹炰笘鐣岀殑闇姹傞┍鍔ㄣ傛垜浠湪鎬濊冮棶棰樻椂錛屼笉鑳藉彧鍋滅暀鍦ㄨ繖涓璦鏄庝箞鍋氱殑錛岃繕瑕侀棶涓闂畠涓轟粈涔堣榪欎箞鍋氾紝鍔ㄦ満鏄粈涔堬紝榪欐牱鎴戜滑鍙互鏇存繁鍏ュ湴鐞嗚В璁稿闂錛夛細
銆銆瀹炵幇C++涓嶤鍙婂叾瀹冭璦鐨勬販鍚堢紪紼嬨?br>銆銆鏄庣櫧浜咰++涓璭xtern "C"鐨勮绔嬪姩鏈猴紝鎴戜滑涓嬮潰鏉ュ叿浣撳垎鏋恊xtern "C"閫氬父鐨勪嬌鐢ㄦ妧宸с?/font>
銆銆錛?錛夊湪C++涓紩鐢–璇█涓殑鍑芥暟鍜屽彉閲忥紝鍦ㄥ寘鍚獵璇█澶存枃浠訛紙鍋囪涓篶Example.h錛夋椂錛岄渶榪涜涓嬪垪澶勭悊錛?br>
{
#include "cExample.h"
}
銆銆鑰屽湪C璇█鐨勫ご鏂囦歡涓紝瀵瑰叾澶栭儴鍑芥暟鍙兘鎸囧畾涓篹xtern綾誨瀷錛孋璇█涓笉鏀寔extern "C"澹版槑錛屽湪.c鏂囦歡涓寘鍚簡extern "C"鏃朵細鍑虹幇緙栬瘧璇硶閿欒銆?br>
銆銆絎旇呯紪鍐欑殑C++寮曠敤C鍑芥暟渚嬪瓙宸ョ▼涓寘鍚殑涓変釜鏂囦歡鐨勬簮浠g爜濡備笅錛?br>
#ifndef C_EXAMPLE_H
#define C_EXAMPLE_H
extern int add(int x,int y);
#endif
/* c璇█瀹炵幇鏂囦歡錛歝Example.c */
#include "cExample.h"
int add( int x, int y )
{
return x + y;
}
// c++瀹炵幇鏂囦歡錛岃皟鐢╝dd錛歝ppFile.cpp
extern "C"
{
#include "cExample.h"
}
int main(int argc, char* argv[])
{
add(2,3);
return 0;
}
銆銆濡傛灉C++璋冪敤涓涓狢璇█緙栧啓鐨?DLL鏃訛紝褰撳寘鎷?DLL鐨勫ご鏂囦歡鎴栧0鏄庢帴鍙e嚱鏁版椂錛屽簲鍔爀xtern "C" {銆}銆?br>
銆銆錛?錛夊湪C涓紩鐢–++璇█涓殑鍑芥暟鍜屽彉閲忔椂錛孋++鐨勫ご鏂囦歡闇娣誨姞extern "C"錛屼絾鏄湪C璇█涓笉鑳界洿鎺ュ紩鐢ㄥ0鏄庝簡extern "C"鐨勮澶存枃浠訛紝搴旇浠呭皢C鏂囦歡涓皢C++涓畾涔夌殑extern "C"鍑芥暟澹版槑涓篹xtern綾誨瀷銆?br>銆銆絎旇呯紪鍐欑殑C寮曠敤C++鍑芥暟渚嬪瓙宸ョ▼涓寘鍚殑涓変釜鏂囦歡鐨勬簮浠g爜濡備笅錛?br>
#ifndef CPP_EXAMPLE_H
#define CPP_EXAMPLE_H
extern "C" int add( int x, int y );
#endif
//C++瀹炵幇鏂囦歡 cppExample.cpp
#include "cppExample.h"
int add( int x, int y )
{
return x + y;
}
/* C瀹炵幇鏂囦歡 cFile.c
/* 榪欐牱浼氱紪璇戝嚭閿欙細#include "cExample.h" */
extern int add( int x, int y );
int main( int argc, char* argv[] )
{
add( 2, 3 );
return 0;
}
銆銆濡傛灉娣卞叆鐞嗚В浜嗙3鑺備腑鎵闃愯堪鐨別xtern "C"鍦ㄧ紪璇戝拰榪炴帴闃舵鍙戞尌鐨勪綔鐢紝灝辮兘鐪熸鐞嗚В鏈妭鎵闃愯堪鐨勪粠C++寮曠敤C鍑芥暟鍜孋寮曠敤C++鍑芥暟鐨勬儻鐢ㄦ硶銆傚絎?鑺傜粰鍑虹殑紺轟緥浠g爜錛岄渶瑕佺壒鍒暀鎰忓悇涓粏鑺傘?br>
]]>
聽聽聽聽
/**/
/*
char聽鏄渶灝忕殑鍙搷浣滃崟鍏?/span>
*/
聽聽聽聽
char
聽str[
20
]
=
"
987654321
"
;
聽聽聽聽
char
聽
*
ch聽
=
聽str;
聽聽聽聽
char
聽
*
test聽
=
聽
"
987654321
"
;
]]>
ftp://210.32.157.56/璇句歡/c++primer/vc++鎶鏈唴騫旾V(娼樼埍姘?.rar
2.C++緇忓吀瀵硅瘽緋誨垪
涓枃錛歨ttp://www.jka77.com/book/cvst_cn.chm
3.MFC Windows 紼嬪簭璁捐(絎簩鐗?
鑻辨枃鐗堬細http://www.jka77.com/book/progmfc2.chm
涓枃鐗堬細鏆傛棤錛屽埗浣滀腑...
4.Effective C++涓枃鐗堬細
http://dlb.pchome.net/development/reference/effectiveCplus.zip
5.More Effective C++涓枃鐗?zhc璇?
http://cable.pchome.net/development/reference/MEC0410.zip
6.More Effective C++涓枃鐗?鍊欐嵎璇?
http://www.nethovel.com/resources/MoreEffectiveC++(WQ).zip
7.Essential C++涓枃鐗?鍏?錛嶅欐嵎璇?
http://www.nethovel.com/resources/Essential%20C++涓枃鐗?鍏?.rar
8.娣卞叆嫻呭嚭MFC 2/e
http://218.30.21.125:8084/ebook/programme/mfc2e.zip
9.浠g爜澶у叏涓枃鐗?
http://www.delphidevelopers.com/docs/tecsubject/cc/CodeComplet110.zip
11.C++緇忓吀瀵硅瘽緋誨垪
涓枃錛歨ttp://www.jka77.com/book/cvst_cn.chm
12.MFC Windows 紼嬪簭璁捐(絎簩鐗?
鑻辨枃鐗堬細http://www.jka77.com/book/progmfc2.chm
涓枃鐗堬細鏆傛棤錛屽埗浣滀腑...
13.鏁版嵁緇撴瀯 C++ 璇█鎻忚堪(涓枃鐗?
http://www.code-labs.com/manual/c_c015.zip
14.Java緙栫▼鎬濇兂涓枃鐗?
ftp://202.118.72.12/pub/doc-book/Java/Java緙栫▼鎬濇兂.zip
15.C++鏍囧噯搴撹嫳鏂囩増
ftp://166.111.64.4/incoming/鏂版枃浠跺す/f/The%20C++%20Standard%20Library(with%20TOC).pdf
16.Windows鏍稿績緙栫▼
鑻辨枃錛歨ttp://www.fmdstudio.net/book/prgapps4.zip
17.TCP-IP璇﹁В鍗?錛氬崗璁?
ftp://202.204.4.161/瀛︿範璧勬枡/TCPIP/TCP-IP璇﹁В鍗?錛氬崗璁?pdf
18.TCP-IP璇﹁В鍗?錛氬疄鐜?
ftp://202.204.4.161/瀛︿範璧勬枡/TCPIP/TCP-IP璇﹁В鍗?錛歍CP浜嬪姟鍗忚錛孒TTP錛孨NTP.pdf
19.TCP-IP璇﹁В鍗?錛歍CP浜嬪姟鍗忚
ftp://202.204.4.161/瀛︿範璧勬枡/TCPIP/TCP-IP璇﹁В鍗?錛氬疄鐜?pdf
20.瀹炵敤綆楁硶鐨勫垎鏋愪笌紼嬪簭璁捐
ftp://202.204.8.10/[4]%20緙栫▼璧勬簮/[%20涔︾睄璧勬枡%20]/[綆楁硶涓庢暟鎹粨鏋刔/瀹炵敤綆楁硶鐨勫垎鏋愪笌紼嬪簭璁捐.rar
21.vc++鎶鏈唴騫曠鍥涚増 (娼樼埍姘?
ftp://210.32.157.56/璇句歡/c++primer/vc++鎶鏈唴騫旾V(娼樼埍姘?.rar
22.C++ Primer鑻辨枃鐗堬細
http://computerstep.w18.net/C/C++%20Primer.zip
23.Effective C++涓枃鐗堬細
http://dlb.pchome.net/development/reference/effectiveCplus.zip
24.More Effective C++涓枃鐗?zhc璇?
http://cable.pchome.net/development/reference/MEC0410.zip
25.More Effective C++涓枃鐗?鍊欐嵎璇?
http://www.nethovel.com/resources/MoreEffectiveC++(WQ).zip
26.Essential C++涓枃鐗?鍏?錛嶅欐嵎璇?
http://www.nethovel.com/resources/Essential%20C++涓枃鐗?鍏?.rar
27.Programming Windows紼嬪紡寮鍙戣璁℃寚鍗楋紞Petzoldi钁?浣欏瓱瀛?璇?
涓枃鐗堬細http://www.nethovel.com/resources/ProgrammingWindows_tw.chm
鑻辨枃鐗堬細http://www.nethovel.com/resources/Petzoldi.chm
28.WinAsm32姹囩紪鏁欑▼錛?Iczelion
http://www.nethovel.com/resources/winasm.chm
29.Windows 95 紼嬪簭璁捐鎸囧崡錛嶅欐嵎璇?
http://www.nethovel.com/resources/win95adg.zip
30.Thinking in C++ 2nd Edition(C++緙栫▼鎬濇兂)
鑻辨枃鐗堬細http://www.nethovel.com/resources/ThinkinginC++.zip
涓枃鐗堬細http://www.dingbing.com/book/thinkc.zip
31.浜烘湀紲炶瘽錛嶄腑鏂囩増
http://www.goodassister.com/book/rysh.pdf
32.The C++ Programming Language鑻辨枃
http://computerstep.w18.net/C/The%20C++%20Programming%20Language.rar
33.VC鎶鏈唴騫曠浜旂増 http://www.helpwork.com/downdata/book/programming/vc/book/vc++2/invcpp5.chm
34.com鎶鏈唴騫?
http://www.helpwork.com/book/html/user/download.asp?id=1123
35.com錛嬫妧鏈唴騫?
http://www.helpwork.com/book/html/user/download.asp?id=952
36.鏂扮紪 Windows API鍙傝冨ぇ鍏?
http://www.4046.com/nnsrc/down/WindowsAPIdq.rar
37.The C programming Language // By Brian W. Kernighan and Dennis M. Ritchie
涓嬭澆鍦板潃錛歨ttp://www.jka77.com/book/The_C_programmin.chm
38.C璇█緙栫▼鎵嬪唽
涓嬭澆鍦板潃錛歨ttp://www.jka77.com/book/CL.chm
39.Delphi 7楂樻晥鏁版嵁搴撶▼搴忚璁?
By 鏉庣淮
涓嬭澆鍦板潃:http://www.codestudy.net/book/download.asp?id=1163&sort=5
40.Windows緗戠粶緙栫▼(絎?鐗?
By Anthony Jones,Jim Ohlund 娓呭崕澶у鍑虹増紺?
涓嬭澆鍦板潃錛氳嫳鏂囩増:http://www.guxiang.com/epubcn/readings/diannaotushu/500/download/1107/network_prog_for_win_2nd.zip
41.Windows2000緙栫▼鎶鏈唴騫?
By Mickey Williams 鏈烘宸ヤ笟鍑虹増紺?
涓嬭澆鍦板潃錛歠tp://ftp.frontfree.net/Pub/Books/C&C++/VC/Windows2000緙栫▼鎶鏈唴騫?rar
42.鏁版嵁浠撳簱
By W.H.Inmon 娓呭崕澶у鍑虹増紺?
涓嬭澆鍦板潃1錛歨ttp://tips.9hao.com/vvbksd/20011120/鏁版嵁浠撳簱.zip
涓嬭澆鍦板潃2: ftp://ftp.math.nankai.edu.cn/Ebook/China-pub/chinapub_computerscience_multimedia/ComputerScience/%CA%FD%BE%DD%B2%D6%BF%E2/
43.緙栫爜鐨勫ゥ縐?
By Charles Petzold 鏈烘宸ヤ笟鍑虹増紺?
涓嬭澆鍦板潃錛歠tp://ftp.math.nankai.edu.cn/Ebook/China-pub/chinapub_computerscience_multimedia/ComputerScience/%B1%E0%C2%EB%B5%C4%B0%C2%C3%D8/
44.緙栬瘧鍘熺悊鍙婂疄璺?
By Louden, K.C 鏈烘宸ヤ笟鍑虹増紺?
涓嬭澆鍦板潃錛歠tp://ftp.math.nankai.edu.cn/Ebook/China-pub/chinapub_computerscience_multimedia/ComputerScience/%B1%E0%D2%EB%D4%AD%C0%ED%BC%B0%CA%B5%BC%F9/
45.Inside C++ Object Model(娣卞害鎺㈢儲C++瀵硅薄妯″瀷錛?
By Lippman 鍊欐嵎璇?
涓嬭澆鍦板潃錛歨ttp://www.jka77.com/book/inside-the-cpp-object-model.pdf
46.C++鏍囧噯紼嬪簭搴?
By Josuttis
涓嬭澆鍦板潃1錛歨ttp://www.codestudy.net/book/download.asp?id=1205&sort=5
涓嬭澆鍦板潃2: ftp://ftp.math.nankai.edu.cn/Ebook/C_C++/The Cpp Standard Library.pdf
47.STL婧愮爜鍓栨瀽
By 鍊欐嵎
涓嬭澆鍦板潃錛歠tp://ftp.math.nankai.edu.cn/Ebook/C_C++/STL婧愮爜鍓栨瀽--渚嵎.pdf
48.C++鎵瑰垽(絎笁鐗? -鐪嬬湅C++鐨勫潖璇濓紒
By I don't know
涓嬭澆鍦板潃錛歨ttp://www.jka77.com/book/CPPPP.pdf
49.紼嬪簭璁捐瀹炶返
涓嬭澆鍦板潃錛歠tp://ftp.math.nankai.edu.cn/Ebook/China-pub/chinapub_computerscience_multimedia/%B3%CC%D0%F2%C9%E8%BC%C6%CA%B5%BC%F9/
50.c++娌夋濆綍
By Andrew Koenig Barbara Moo 浜烘皯閭數鍑虹増紺?
涓嬭澆鍦板潃錛歨ttp://www.codestudy.net/book/download.asp?id=1261&sort=5
51.C++Builder4鎶鏈唴騫?(榪欐湰涔︿亢涓嶇煡閬撳ソ涓嶅ソ錛?
By I don't Know
涓嬭澆鍦板潃錛歨ttp://www.codestudy.net/book/download.asp?id=1254&sort=5
52.涓嬮潰涓ゆ湰涔︿竴鑸ぇ瀹剁‖鐩橀噷閮芥湁鐨勫惂錛岃屼笖寰堣佷簡錛屼絾鏄負浜嗗叏闈紝灝辨彁涓婃潵鍚?
(1)Windows 95 紼嬪紡璁捐鎸囧崡 - 鍊欐嵎
涓嬭澆鍦板潃錛歨ttp://jjhou.csdn.net/win95-a-developers-guide.pdf
(2)Windows 95 緋葷粺紼嬪紡璁捐澶уゥ縐?- 鍊欐嵎
涓嬭澆鍦板潃錛歨ttp://jjhou.csdn.net/windows95-system-programming-secrets.pdf
53. 涓浗澶х櫨縐戝叏涔β鋒暟瀛?
涓嬭澆鍦板潃錛歠tp://ftp.math.nankai.edu.cn/Ebook/涓浗澶х櫨縐戝叏涔?涓浗澶х櫨縐戝叏涔β鋒暟瀛?pdf
54銆?.0M Bjarne Stroustrup - The C++ Programming Language
http://www.u-n-f.com/books/archive/The%20C++%20Programming%20Language.tar.gz
55銆?.0M Richard Stevens - TCP-IP Illustrated
http://www.u-n-f.com/books/archive/TCP-IP%20Illustrated.tar.gz
56銆?.5M Randall Hyde - Art Of Assembly
http://www.u-n-f.com/books/archive/Randall%20Hyde%20-%20Art%20Of%20Assembly.tar.gz
57銆?.1M M. Abrash - Zen of Graphics Programming
http://www.u-n-f.com/books/archive/M.%20Abrash%20-%20Zen%20of%20Graphics%20Programming.zip
58銆?49k Kernighan and Ritche - The C Programming Language
http://www.u-n-f.com/books/archive/Kernighan%20and%20Ritchie%20-%20The%20C%20Programming%20Language.zip
59銆?.3M Bruce Schneier - Applied Cryptography
http://www.u-n-f.com/books/archive/Bruce%20Schneier%20-%20Applied%20Cryptography.zip
60銆丳HP4_Grundlagen_und_Profiwissen
http://www.u-n-f.com/books/archive/lamp/PHP4_Grundlagen_und_Profiwissen.pdf
61.銆奀++ Builder楂樼駭緙栫▼鎶鏈?
http://www.dingbing.com/book/builder.zip
62.銆奦C++ 6.0 TLR 妯℃澘搴撳弬鑰冩墜鍐屻?
http://www.easysea.com/diannao/download/prog/c/mbkc.zip
63.銆夿ORLAND C++ BUILDER 瀹炵敤鍩硅鏁欑▼銆?
http://202.101.232.120/book/openfile.asp?id=223&filename=BC98_CB526.zip
64.銆奃elphi楂樼駭寮鍙戞寚鍗椼?
http://www.pcbookcn.com/s10899book/program/delphi/Delphi_gjkfzn_for3.rar
65.銆婃柊緙?Windows API鍙傝冨ぇ鍏ㄣ?
ftp://book:book@down.pcbookcn.com/pro/delphi/鏂扮紪Windows_API_鍙傝冨ぇ鍏?rar
66.銆奃elphi娣卞害鍘嗛櫓-闄勪功婧愮爜銆?
http://www.pcbookcn.com/s10899book/program/delphi/Delphi_sdlx_code.rar
67.銆奃elphi 7楂樻晥鏁版嵁搴撶▼搴忚璁°?
ftp://book:book@down.pcbookcn.com/pro/delphi/鏉庣淮鐨勬柊涔︺奃elphi7楂樻晥鏁版嵁搴撶▼搴忚璁°?rar
68.銆奃elphi7寮鍙戞寚鍗椼?
ftp://book:book@down.pcbookcn.com/pro/delphi/delphi7寮鍙戞寚鍗?rar
69.銆奃elphi6闆嗘垚寮鍙戠幆澧冦?
ftp://book:book@down.pcbookcn.com/pro/delphi/Delphi6闆嗘垚寮鍙戠幆澧?rar
70.銆奃elphi6鏁版嵁搴撶紪紼嬨?
ftp://book:book@down.pcbookcn.com/pro/delphi/Delphi6鏁版嵁搴撶紪紼?rar
72.銆奃elphi5.xADO_MTS_COM+楂樼駭紼嬪簭璁捐綃囥?
ftp://book:book@down.pcbookcn.com/pro/delphi/Delphi5.xADO_MTS_COM+楂樼駭紼嬪簭璁捐綃?rar
73.銆奦ISUAL BASIC 緙栫▼鏍囧噯銆?
http://www.dingbing.com/book/vb.zip
74.銆奦isual Basic6.0涓枃鐗堢▼搴忓憳鎸囧崡銆?
http://www.easysea.com/diannao/download/prog/vb/zwbc.zip
75.銆奦isual Basic 6.0 鎺т歡鍙傝冩墜鍐屻?
http://www.easysea.com/diannao/download/prog/vb/kjck.zip
76.銆奦isual Basic 6.0涓枃鐗堣璦鍙傝冩墜鍐屻?
http://www.easysea.com/diannao/download/prog/vb/zwby.zip
77.銆奦isual Basic 6.0 寮鍙戝疂鍏搞?
http://www.easysea.com/diannao/download/prog/vb/kfbd.zip
78.銆奦isual Basic 6.0 瀹炰緥鏁欑▼銆?
http://www.easysea.com/diannao/download/prog/vb/sljc.zip
79.銆奦B 6.0 涓枃鐗堝疄鐢ㄥ弬鑰冩墜鍐屻?
http://www.easysea.com/diannao/download/prog/vb/syck.zip
80.銆奦isual Basic 6寮鍙戜漢鍛樻寚鍗椼?
http://www.easysea.com/diannao/download/prog/vb/kfzn.zip
81.銆奦B 鍜?SQL Server 緙栫▼鎸囧崡錛堢浜旂増錛夈?
http://www.easysea.com/diannao/download/prog/vb/bczn.zip
82.銆奐builder 5 涓枃甯姪銆?
http://www.pdown.net/download.asp?downid=2&id=991
83.銆奐Builder寮鍙戜漢鍛樻寚鍗椼?
http://youth.dlmu.edu.cn/book/list_down.php?bkid=224
84.銆奧in32鐨処nternet鍑芥暟璇存槑銆?
妗f澶у皬錛?245248K
http://www.easysea.com/diannao/download/prog/windows/win32int.zip
85.銆奦isual InterDev 浠庡叆闂ㄥ埌綺鵑氥?
http://www.easysea.com/diannao/download/prog/interdev/crmd.wdl
86.銆奦isual InterDev 6.0 Web 鍙傝冩墜鍐?銆?
http://www.easysea.com/diannao/download/prog/interdev/jsck.zip
87.銆奦isual InterDev 6.0 Guide 紼嬪簭鍛樸?
http://www.easysea.com/diannao/download/prog/interdev/cxyz.zip
88.銆奐avaScript 紼嬪簭寮鍙戞墜鍐屻?
http://www.cty99.com/Templet/bookdownmore.asp?booktype=script#
89.銆奐AVA 澶у叏銆?
http://www.easysea.com/diannao/download/prog/java/cxkf.zip
90.銆奦isual J++ 6.0 WFC 綾誨簱鍙傝冩墜鍐屻?
http://www.easysea.com/diannao/download/prog/java/lkck.zip
91.銆奐ava鑱旀兂錛堜腑鏂囷級銆?
http://www.easysea.com/diannao/download/prog/java/lkck.zip
92.銆奜racle 8 瀹炵敤澶у叏銆?
http://www.easysea.com/diannao/download/prog/oracle/sydq.zip
93.銆奙icrosoft SQL Server 綆$悊鍛樻墜鍐屻?
http://www.easysea.com/diannao/download/prog/sql/glys.zip
94.銆婃帉鎻CCESS寮鍙戙?
http://www.easysea.com/diannao/download/prog/sql/glys.zip
95.銆奜racle Performance Tuning and Optimization銆?
http://www.oradb.net/book/oracle_pt.zip
96.銆奜racle ProC 紼嬪簭璁捐銆?
http://www.oradb.net/book/oracleproc.zip
97.銆奜racle8鍒濆鑰呮寚鍗椼?
http://www.easysea.com/diannao/download/prog/oracle/cxzz.zip
98.銆奟ED HAT LINUX 6澶у叏銆?
http://www.dingbing.com/book/redhatall.zip
99.銆奟ED HAT LINUX 6綆$悊宸ュ叿銆?
http://www.dingbing.com/book/redhatman.zip
100.銆奦C++楂樼駭緙栫▼銆?
http://www.easysea.com/diannao/download/prog/c/vcgj.zip
]]>
2銆乸rofiler宸ュ叿鍙互鐢ㄦ潵媯鏌ョ▼搴忔晥鐜囥?br />
3銆佹枃浠禔
聽聽聽聽聽聽funtion f
聽聽聽聽聽聽鏂囦歡B
聽聽聽聽聽聽#include "A"
聽聽聽聽聽聽extern聽f
聽聽聽聽聽聽姝ゅ鐢ㄦ硶閿欒錛屽鍑芥暟f榪涜浜嗛噸瀹氫箟銆?/font>
鏈枃鏃ㄥ湪浠嬬粛閰嶅悎浣跨敤 NetBeans Profiler v5.0 鎴?Profiler Milestone 8 鐨勫唴瀹廣傚鏋滄偍浣跨敤鐨勬槸 Milestone 5錛岃浣跨敤姝ょ増鏈?/a>銆傚鏋滄偍浣跨敤鐨勬槸 Milestone 6錛岃浣跨敤姝ょ増鏈?/a>銆?/p> 棰勮鎸佺畫鏃墮棿錛?0 鍒嗛挓 NetBeans Profiler 鏄竴涓姛鑳藉己澶х殑宸ュ叿錛屽畠鎻愪緵浜嗘湁鍏沖簲鐢ㄧ▼搴忚繍琛屾椂琛屼負鐨勯噸瑕佷俊鎭侼etBeans Profiler 浜х敓鐨勫紑閿鐩稿鏉ヨ杈冨皬錛屽畠鍙互璺熻釜綰跨▼鐘舵併丆PU 鎬ц兘鍜屽唴瀛樹嬌鐢ㄦ儏鍐點傛湰鏁欑▼灝嗗悜鎮ㄤ粙緇嶅浣曚嬌鐢?NetBeans Profiler 鏉ュ畬鎴愪互涓嬫搷浣滐細 鏈暀紼嬪亣瀹氭偍宸茬粡鍏鋒湁浜嗕竴浜涘熀鏈殑 Java 緙栫▼鍜?NetBeans IDE 浣跨敤緇忛獙銆?/p>鍏堝喅鏉′歡
鏁欑▼鎵闇鐨勮蔣浠訛細
鏈枃浣跨敤鐨勮〃紺烘硶
鍦ㄥ紑濮嬪涔犳暀紼嬩箣鍓嶏紝璇峰厛媯鏌ヤ互涓嬪唴瀹癸細
鍦ㄦ湰緇冧範涓紝鎮ㄥ皢瀛︿範濡備綍浣跨敤 NetBeans Profiler 鐩戣 J2SE 搴旂敤紼嬪簭涓殑綰跨▼鐘舵併傝繖鏍鳳紝鎮ㄥ氨鍙互璇婃柇鏍蜂緥搴旂敤紼嬪簭涓殑鎬ц兘闂銆?
Swing 搴撲負 J2SE 搴旂敤紼嬪簭鎻愪緵浜嗗浘褰㈢敤鎴風晫闈㈢粍浠躲係wing 搴撲細浣跨敤鍒板涓嚎紼嬶紝鍒╃敤 NetBeans Profiler 榪欎竴鍔熻兘寮哄ぇ鐨勫伐鍏鳳紝鎮ㄥ彲浠ュ垎鏋愬嚭姣忎釜綰跨▼鎵鑺辮垂鐨勫鐞嗘椂闂達紝浠庤屽埄鐢ㄨ繖浜涘垎鏋愪俊鎭潵瑙e喅鎬ц兘闂銆?




閫夋嫨鈥滄ц兘鍒嗘瀽鈥?gt;鈥滈珮綰у懡浠も?gt;鈥滆繍琛屾ц兘鍒嗘瀽鍣ㄦ牎鍑嗏濄傚畬鎴愭牎鍑嗗悗錛孭rofiler 浼氭樉紺轟竴涓璇濇錛岃鍗曞嚮鈥滅‘瀹氣濇寜閽傚涓嬮潰鐨勭ず渚嬫墍紺恒?

瑕佽繘琛屾ц兘鍒嗘瀽錛岃榪斿洖鑷充笂闈㈢殑絎?9 姝ャ?


瀹冧嬌鐢ㄩ鑹茬紪鐮佹潵鏄劇ず綰跨▼鐘舵併?

姝ゅ浘褰㈡樉紺轟簡搴旂敤紼嬪簭娌℃湁鍝嶅簲鐨勫師鍥犮傛爣璁頒負 AWT-EventQueue-0 鐨勭嚎紼嬫槸 Swing 鐢ㄦ潵澶勭悊紿楀彛浜嬩歡鐨?a >浜嬩歡鍒嗗彂綰跨▼ (Event Dispatch Thread, EDT)銆傚湪姝e父榪愯鐨?Swing 搴旂敤紼嬪簭涓紝EDT 鐨勫ぇ閮ㄥ垎鏃墮棿澶勪簬絳夊緟鐘舵佽岃繍琛岀殑鏃墮棿鍗村緢灝戯紝鍥犱負瀹冨彧鏈夊湪鍒嗗彂浜嬩歡鏃舵墠浼氳繍琛屽緢鐭殑涓孌墊椂闂淬備絾鏄紝濡傛灉搴旂敤紼嬪簭涓殑浜嬩歡澶勭悊紼嬪簭鏈珛鍗寵繑鍥烇紝鍒欑▼搴忓皢鍋滄鍝嶅簲錛屽氨鍍忓湪姝ょず渚嬩腑涓鏍楓?br />


EDT 涓洪粍鑹詫紝搴旂敤紼嬪簭鍒涘緩鐨勫悕涓?"Our SwingWorker #1" 鐨勭嚎紼嬩負緇胯壊銆傜敱浜?EDT 涓嶆槸鐢ㄦ潵鎵ц鑰楁椂浠誨姟鐨勶紝鍥犳錛屾寜閽拰鍏朵粬紼嬪簭鎺т歡浠嶄繚鎸佸搷搴旂殑鐘舵併?

璇ュ浘褰㈠彲浠ュ府鍔╂偍鍒ゆ柇紼嬪簭鍦ㄦ瘡涓嚎紼嬩腑鎵鑺辮垂鐨勬椂闂存槸鍚︽伆褰撱備笂榪扮ず渚嬫槸浠g爜淇鍚庣殑紺轟緥錛屽洜姝わ紝瀹冩樉紺轟簡 EDT 鍦ㄥぇ閮ㄥ垎鏃墮棿涓兘澶勪簬絳夊緟鐘舵佺殑鎯呭艦錛岃繖姝eソ鏄綰跨▼搴斿叿鏈夌殑琛屼負銆?br />
鍦ㄦ湰緇冧範涓紝鎮ㄥ涔犱簡濡備綍浣跨敤 Profiler 鏉ュ惎鍔ㄥ簲鐢ㄧ▼搴忥紝浠ュ強濡備綍瑙i噴 Profiler 鐨勭嚎紼嬩俊鎭浘褰紝浠ユ鏉ヨ窡韙?Swing 搴旂敤紼嬪簭涓殑鎬ц兘闂銆?
鍦ㄦ湰緇冧範涓紝鎮ㄥ皢瀛︿範濡備綍浣跨敤 Profiler 鏉ョ‘瀹氭煇涓簲鐢ㄧ▼搴忕殑鏂規硶鎵鑺辮垂鐨勬椂闂淬?/p>
CPU 鐨勬ц兘闂閫氬父涓庡簲鐢ㄧ▼搴忕殑鐗瑰畾鍔熻兘鏈夊叧銆備緥濡傦紝鍦ㄦ姤鍛婄郴緇熶腑錛屾煇涓姤鍛婄殑榪愯閫熷害鍙兘姣斿叾浠栨姤鍛婃參銆傚彧鍒嗘瀽搴旂敤紼嬪簭涓嚭鐜版ц兘闂鐨勯儴鍒嗭紝鍙互澶уぇ鍑忓皯鎬ц兘鍒嗘瀽鍣ㄤ駭鐢熺殑寮閿銆傚湪鏈粌涔犱腑錛屾偍灝嗕嬌鐢?NetBeans Profiler 鏉ユ鏌?Web 搴旂敤紼嬪簭涓?CPU 鐨勪嬌鐢ㄦ儏鍐點傚湪緇冧範 3 涓紝鎴戜滑浠嶇劧浣跨敤璇ユ牱渚?Web 搴旂敤紼嬪簭鏉ヨ鏄庡浣曢氳繃 Profiler 鏌ユ壘鍐呭瓨娉勬紡銆?/p>
娉ㄦ剰錛氫笅闈㈢殑涓変釜姝ラ浠呴傜敤浜?Milestone 8銆?/em>
Per銆傜瓑寰?IDE 涓烘偍鏄劇ず閫傜敤鐨勭被鍒楄〃銆傞夋嫨 Performance 綾匯傚崟鍑燴滄墦寮鈥濇寜閽互鎵撳紑鍏舵柟娉曞垪琛ㄣ?
娉ㄦ剰錛氫笅闈㈢殑涓や釜姝ラ鍙傜敤浜?Profiler v5.0銆?/em>


欏墮儴紿楀彛鏄劇ず浜嗕粠鏍規柟娉曞紑濮嬬殑瀹屾暣鏂規硶璋冪敤鍥懼艦銆傚簳閮ㄧ獥鍙f槸閲嶇偣鎻忚堪鐨勯儴鍒嗭紱瀹冩樉紺轟簡搴旂敤紼嬪簭涓殑鐑偣錛屽嵆鎵ц鏃墮棿鏈闀跨殑閭d簺鏂規硶銆?
鍦ㄦ湰緇冧範涓紝鎮ㄥ涔犱簡濡備綍浣跨敤鎬ц兘鍒嗘瀽鍣ㄦ墽琛屾柟娉曟ц兘鍒嗘瀽銆?/p>
浣滀負緇冧範 2 鐨勫悗緇粌涔狅紝鎴戜滑灝嗗湪鏈粌涔犱腑瀛︿範濡備綍瑙i噴鏌愪簺鎬ц兘鍒嗘瀽鍣ㄧ殑鍥懼艦浠ョ洃瑙嗗簲鐢ㄧ▼搴忓垱寤哄璞$殑榪囩▼銆備笅闈㈠皢鏄劇ず涓涓唴瀛樻硠婕忕ず渚嬨?

灝嗘樉紺衡滈夋嫨鎬ц兘鍒嗘瀽浠誨姟鈥濆璇濇銆?
鍦ㄥ乏渚х殑鍥懼艦涓紝綰㈣壊鐨勯槾褰遍儴鍒嗚〃紺哄垎閰嶇殑 JVM 鍫嗗ぇ灝忋傜傳鑹茬殑瑕嗙洊閮ㄥ垎琛ㄧず瀹為檯浣跨敤鐨勫爢絀洪棿澶у皬銆傚湪涓婇潰鐨勭ず渚嬩腑錛屼笂嬈℃洿鏂版墍鍒嗛厤鐨勫爢澶у皬宸茶秴榪囦簡 20 MB銆傚叾涓紝瀹為檯鐢ㄦ潵淇濆瓨 Java 瀵硅薄鐨勫爢澶у皬鐣ュぇ浜?10 MB銆?/p>
鍙充晶鍥懼艦鏄劇ず浜?JVM 涓殑媧誨姩綰跨▼鏁般?/p>
涓棿鐨勫浘褰㈡樉紺轟簡涓ょ閲嶈鐨勫爢緇熻淇℃伅銆?
榪欎簺鍒楁彁渚涗簡瀵硅薄鍒嗛厤鍜屽唴瀛樹嬌鐢ㄦ儏鍐典俊鎭?
璇鋒敞鎰忥紝鍦ㄥ垎閰嶄簡 double[] 瀵硅薄鐨勬柟娉曚腑錛屽彧鏈変竴涓柟娉曞垱寤轟簡鍏鋒湁杈冨ぇ鐢熸垚鏁板肩殑 double[] 瀵硅薄銆傝鏂規硶鏄?run()錛屽畠浣嶄簬鍏鋒湁鐩稿簲鍚嶇О demo.memoryleak.LeakThread 鐨勭被涓?
鍦ㄦ湰緇冧範涓紝鎮ㄥ涔犱簡濡備綍浣跨敤鎬ц兘鍒嗘瀽鍣ㄦ潵鐩戣搴旂敤紼嬪簭鍒涘緩瀵硅薄鐨勮繃紼嬨傛偍榪樼湅鍒頒簡鎬ц兘鍒嗘瀽鍣ㄥ湪搴旂敤紼嬪簭鍑虹幇鍐呭瓨娉勬紡鏃舵墍鎻愪緵鐨勫悇縐嶇被鍨嬬殑鍒嗘瀽鎸囨暟銆?/p>
(涓)Windows涓婥/C++寮鍙戝伐鍏蜂腑錛孷C6浣跨敤杈冧負鏅亶錛屽洜姝よ繖閲屽厛璁蹭笅VC6.0鐜涓泦鎴恜clint鐨勬楠?
棣栧厛,
褰撶劧瑕佷笅杞借蔣浠訛紝姝g増杞歡瑕?00澶?鍛紝涔頒笉璧鳳紒鎵浠ュ彧濂界綉涓婃壘鍏嶈垂鐨勬媺銆備粠
http://www.61ic.com/down/othe/pclint.rar
澶勫彲浠ヤ笅杞藉埌涓涓?.0鐗堟湰鐨刾clint.
1.灝唒clint.rar瑙e帇鑷砪:\, 榪欐牱lint鏂囦歡灝變綅涓巆:\pclint(瀹夎鐩綍)涓嬩簡銆?br />2.灝哻:\pclint\lnt 涓嬬殑3涓枃浠秎ib-w32.lnt錛宔nv-vc6.lnt錛宑o-msc60.lnt鎷瘋礉鑷砪:\pclint涓嬶紝
鍐嶅湪瀹夎鐩綍涓嬪垱寤簊td.lnt鍜宱ptions.lnt涓や釜鏂囦歡錛屽叾涓璼td.lnt鐨勫唴瀹瑰涓?br />// contents of std.lnt
c:\pclint\co-msc60.lnt
c:\pclint\lib-w32.lnt
c:\pclint\options.lnt聽 -si4 -sp4
-i"D:\Program Files;D:\Program Files\Microsoft Visual Studio\VC98\Include"
//end
鍏朵腑-i鍚庨潰鐨勮礬寰勫悕涓篤C鐨勫畨瑁呰礬寰勫拰VC Include 鏂囦歡璺緞錛屾牴鎹嚜宸辯殑淇敼渚垮彲銆?br />options.lnt 鍐呭鍙負絀猴紝涓哄畾鍒跺唴瀹?浠ュ悗闇瑕佹椂鍐嶆坊鍔犮?br />鍑嗗宸ヤ綔鍋氬畬浜嗭紝涓嬩竴姝ュ氨鏄灝唒clint闆嗘垚鍒癡C6涓幓錛屽厛閰嶇疆lint浣夸箣鑳藉鍗曚釜C鎴朇++鏂囦歡榪涜媯鏌ャ?br />1.鎵撳紑VC6錛宼ools--->customize-->tools 鏂板緩涓涓悕涓簆clint鐨勯」錛屽湪涓嬮潰濉叆
command:聽 C:\pclint\lint-nt.exe
arguments:聽 -u c:\pclint\std.lnt聽 c:\pclint\env-vc6.lnt聽 "$(FilePath)"
Use Output Window聽 鎵撲笂鍕?br />close 瀹屾垚銆?榪欎釜鍦ㄤ綘VC紿楀彛tools鑿滃崟涓嬪簲璇ュ浜嗕竴涓猵clint閫夐」錛屽彲浠ョ敤瀹冩潵榪愯lint紼嬪簭錛屽浣犵殑c/c++浠g爜榪涜闈欐佹鏌ヤ簡銆?br />鐜板湪灝卞彲浠ョ敤涓皬紼嬪簭嫻嬭瘯涓涓媝clint浜?/font>
//test1.cpp#include <string.h>
class X
{
聽int *p;
public:
聽X()
聽{ p = new int[20]; }
聽void init()
聽{ memset( p, 20, 'a'聽 ); }
聽~X()
聽{ delete p; }
};
緙栬瘧榪欎釜鏂囦歡錛岀湅涓嬩綘鐨勭紪璇戝櫒緇欎綘澶氬皯璀﹀憡錛屽啀榪愯涓媗int錛?鍙互鑷繁瀵規瘮涓涓嬨?br />鎴戠殑鏈哄櫒涓婏紝VC浜х敓0 errors 0 warnings, 鑰宭int紼嬪簭浜х敓浜嗗涓?鏉¤鍛婁俊鎭?鏈変簺榪樻槸寰堟湁鐢ㄥ鐨勬彁紺猴紝榪欓噷灝變笉涓涓鍒嗘瀽浜?
test.cpp(12): error 783: (Info -- Line does not end with new-line)
test.cpp(7): error 1732: (Info -- new in constructor for class 'X' which has no
assignment operator)
test.cpp(7): error 1733: (Info -- new in constructor for class 'X' which has no
copy constructor)
聽聽聽 { memset( p, 20, 'a'聽 ); }
test.cpp(9): error 669: (Warning -- Possible data overrun for function
'memset(void *, int, unsigned int)', argument 3 (size=97) exceeds argument 1
(size=80) [Reference: test.cpp: lines 7, 9])
test.cpp(7): error 831: (Info -- Reference cited in prior message)
test.cpp(9): error 831: (Info -- Reference cited in prior message)
聽聽聽 { delete p; }
test.cpp(11): error 424: (Warning -- Inappropriate deallocation (delete) for
'new[]' data)
聽--- Wrap-up for Module: test.cpp
test.cpp(2): error 753: (Info -- local class 'X' (line 2, file test.cpp) not
referenced)
Tool returned code: 8
2.閫氬父涓涓猇C欏圭洰涓寘鍚涓狢鎴朇++鏂囦歡錛屾湁鏃墮渶瑕佸悓鏃跺榪欎竴緋誨垪鐨勬枃浠惰繘琛宭int媯鏌ワ紝鎴戜滑鍙互閫氳繃閰嶇疆涓涓猵clint_project鏉ヨ揪鍒扮洰鐨勩?br />鍜屽墠闈㈢涓姝ヤ腑鐨勬柟娉曞熀鏈竴鏍鳳紝涓嶈繃榪欓噷鎴戜滑闇瑕佺敤鍒皍nix涓殑find絳夊懡浠ゆ潵鏌ユ壘褰撳墠鐩綍涓嬬殑C鍜孋++鏂囦歡錛岀劧鍚庡啀灝嗗畠浠佺粰lint紼嬪簭澶勭悊錛屾墍浠ュ緱鍏堜粠
http://www.weihenstephan.de/~syring/win32/UnxUtils.zip
涓嬭澆UnxUtils.zip.
鎺ョ潃鎸変笅鍒楁楠よ繘琛岋細
(i)瑙e帇UnxUtils.zip鑷砪:\unix涓? 鍙互鐪嬪埌C:\unix\usr\local\wbin鏈夊緢澶歶nix涓嬬殑鍛戒護,絳変笅浼氱敤鍒?br />(ii)鎵撳紑VC6錛宼ools--->customize-->tools
鏂板緩涓涓悕涓簆clint_project鐨勯」錛屽彧涓嶈繃涓嬮潰鐨刢ommands鍜宎rguments鍐呭涓嶅悓銆?br />commands: C:\unix\usr\local\wbin\find.exe
arguments: $(FileDir) -name *.c聽 -o -name *.cpp | C:\unix\usr\local\wbin\xargs
lint-nt聽聽聽聽聽聽聽聽聽聽聽 -i"c:\unix\usr\local"聽 -u c:\pclint\std.lnt聽
c:\pclint\env-vc6.lnt
(iii)Use Output Window鎵撲笂鍕撅紝close閫鍑恒傚ソ浜嗭紝榪欐椂VC
tools鑿滃崟涓嬪簲璇ュ張澶氫簡涓涓猵clint_project欏逛簡錛屼綘浠ュ悗鍙互鐢ㄥ畠鏉ュ涓涓猇C欏圭洰榪愯lint媯鏌ョ▼搴忎簡.
(浜?SourceInsight涓泦鎴恜clint紼嬪簭鐨勬柟娉?
Windows騫沖彴涓嬩篃鏈夊ソ澶氫漢閮藉枩嬈㈢敤SourceInsight緙栬緫C/C++紼嬪簭錛屽鏋滃皢pclint闆嗘垚鍒癝ourceInsight涓紝閭e氨鐩稿綋浜庣粰SourceInsight澧炲姞浜嗕竴涓狢/C++緙栬瘧鍣?鑰屼笖瀹冪殑媯鏌ユ洿涓ユ牸錛岃兘鍙戠幇涓浜涚紪璇戝櫒鍙戠幇涓嶄簡鐨勯棶棰橈紝鍙互澶уぇ鍑忓皯紼嬪簭涓綔浼忕殑BUG銆傝繖鏍風殑璇濓紝鐩鎬俊鏇村浜轟細鍠滄SourceInsight榪欎釜宸ュ叿浜嗐?br />涓嬮潰綆瑕佸湴浠嬬粛涓媝clint闆嗘垚鍒癝ourceInsight涓殑鏂規硶
鏈変簡涓婇潰VC涓泦鎴恜clint鐨勭粡楠? 涓嬮潰鐨勪簨鎯呭氨搴旇姣旇緝杞繪澗浜嗭紝
(a)鎵撳紑浣犵殑SourceInsight, 閫夋嫨Options-->Custom Commands-->Add, 杈撳叆pclint(褰撶劧鍚嶅瓧鍙互闅忎究).
(b) Run涓緭鍏? c:\pclint\lint-nt聽 -u聽 c:\pclint\std.lnt聽 c:\pclint\env-vc6.lnt %f
(c)Dir鐣欑┖錛屽皢Iconic Window, Capture Output, Parse Links in OutPut, File,then Line
鍥涢」鍓嶆墦涓婂嬀銆?br />(d)鐒跺悗鐐瑰彸渚?Menu--->Menu-->View--><end of menu>, 鍙充晶Insert, OK.
(e)姝ゆ椂鍦⊿ourceInsight涓殑View鑿滃崟涓嬪浜嗕釜pclint閫夐」錛屽彲浠ョ敤瀹冩潵瀵瑰崟涓狢/C++鏂囦歡榪涜闈欐佹鏌ャ?/font>
鐢ㄧ被浼肩殑鏂規硶鍙互閰嶇疆瀵逛竴涓猄ourceInsight宸ョ▼鏂囦歡鐨刲int媯鏌ャ?br />(a)鎵撳紑浣犵殑SourceInsight, 閫夋嫨Options-->Custom Commands-->Add,
杈撳叆pclint_project(褰撶劧鍚嶅瓧鍙互闅忎究).
(b) Run涓緭鍏? C:\unix\usr\local\wbin\find.exe %d -name *.c聽 -o -name *.cpp聽 |
C:\unix\usr\local\wbin\xargs lint-nt
-i"C:\unix\usr\local" -u c:\pclint\std.lnt聽 c:\pclint\env-vc6.lnt
(c)Dir鐣欑┖錛屽皢Iconic Window, Capture Output, Parse Links in OutPut, File,then Line
鍥涢」鍓嶆墦涓婂嬀銆?br />(d)鐒跺悗鐐瑰彸渚?Menu--->Menu-->View--><end of menu>, 鍙充晶Insert, OK.
(e)姝ゆ椂鍦⊿ourceInsight涓殑View鑿滃崟涓嬪浜嗕釜pclint_project閫夐」錛屽彲浠ョ敤瀹冩潵涓涓伐紼嬩腑鐨凜/C++鏂囦歡榪涜闈欐佹鏌ャ?/font>
鏈枃涓昏瀵筽clint闆嗘垚鍒癡C鍙奡ourceInsight鐜涓殑鏂規硶鏍規嵁鏈漢瀹夎鍜屼嬌鐢ㄥ績寰楀仛浜嗚緝璇︾粏浠嬬粛錛屽笇鏈涘浠ュ墠娌′嬌鐢ㄨ繃pclint鐨勬湅鍙嬩滑鑳芥湁鎵甯姪錛屼笉瓚充箣澶勮繕璇峰鎸囨錛?br />
#include聽
main()聽
{聽
FILE聽
*
fp;聽
char
聽ch;聽
if
((fp
=
fopen(
"
c1.txt
"
,
"
rt
"
))
==
NULL)聽
{聽
printf(
"
\nCannot聽open聽file聽strike聽any聽key聽exit!
"
);聽
exit(
1
);聽
}
聽
ch
=
fgetc(fp);聽
while
(ch
!=
EOF)聽
{聽
putchar(ch);聽
ch
=
fgetc(fp);聽
}
聽
fclose(fp);聽
}
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
#include聽
main(
int
聽argc,
char
聽
*
argv[])聽
{聽
FILE聽
*
fp1,
*
fp2;聽
char
聽ch;聽
if
(argc
==
1
)聽
{聽
printf(
"
have聽not聽enter聽file聽name聽strike聽any聽key聽exit
"
);聽
getch();聽聽聽聽聽聽聽
//
鐢ㄤ簬絳夊緟杈撳叆鏂囦歡鍚?/span>
exit(
0
);聽
}
聽
if
((fp1
=
fopen(argv[
1
],
"
rt
"
))
==
NULL)聽
{聽
printf(
"
Cannot聽open聽%s\n
"
,argv[
1
]);聽
getch();聽
exit(
1
);聽
}
if
(argc
==
2
)聽fp2
=
stdout;聽
else
聽
if
((fp2
=
fopen(argv[
2
],
"
wt+
"
))
==
NULL)聽
{聽
printf(
"
Cannot聽open聽%s\n
"
,argv[
1
]);聽
getch();聽
exit(
1
);聽
}
聽
while
((ch
=
fgetc(fp1))
!=
EOF)聽
fputc(ch,fp2);聽
fclose(fp1);聽
fclose(fp2);聽
}
聽
#include聽聽
<
string
.h
>
聽聽
聽
void
聽聽main()聽聽
{聽聽
聽聽聽聽聽聽聽
string
聽聽aaa
=
聽聽
"
abcsd聽聽d
"
;聽聽
聽聽聽聽聽聽聽printf(
"
looking聽聽for聽聽abc聽聽from聽聽abcdecd聽聽%s\n
"
,聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽(strcmp(aaa,
"
abc
"
))聽聽
?
聽聽
"
Found
"
聽聽:聽聽
"
Not聽聽Found
"
);聽聽
聽
}
聽聽
鑰屼笅闈細聽聽
#include聽聽
<
string
>
聽聽
聽
using
聽聽
namespace
聽聽std;聽聽
void
聽聽main()聽聽
{聽聽
聽聽聽聽聽聽聽
string
聽聽aaa
=
聽聽
"
abcsd聽聽d
"
;聽聽
聽聽聽聽聽聽聽printf(
"
looking聽聽for聽聽abc聽聽from聽聽abcdecd聽聽%s\n
"
,聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽(strcmp(aaa,
"
abc
"
))聽聽
?
聽聽
"
Found
"
聽聽:聽聽
"
Not聽聽Found
"
);聽聽
}
聽聽
榪欓噷鐨剆tring緙栬瘧鍣ㄥ氨璁よ瘑浜嗭紝浣嗘槸strcmp灝變笉璁よ瘑浜嗗憿錛熉犅?br />
涓鑸竴涓狢++鐨勮佺殑甯︹?h鈥濇墿灞曞悕鐨勫簱鏂囦歡錛屾瘮濡俰ostream.h錛屽湪鏂版爣鍑嗗悗鐨勬爣鍑嗗簱涓兘鏈変竴涓笉甯︹?h鈥濇墿灞曞悕鐨勭浉瀵瑰簲錛屽尯鍒櫎浜嗗悗鑰呯殑濂藉鏀硅繘涔嬪錛岃繕鏈変竴鐐瑰氨鏄悗鑰呯殑涓滀笢閮藉榪涗簡鈥渟td鈥濆悕瀛楃┖闂翠腑銆?聽
聽
浣嗗敮鐙瑂tring鐗瑰埆銆?聽
闂鍦ㄤ簬C++瑕佸吋瀹笴鐨勬爣鍑嗗簱錛岃孋鐨勬爣鍑嗗簱閲岀宸т篃宸茬粡鏈変竴涓悕瀛楀彨鍋氣渟tring.h鈥濈殑澶存枃浠訛紝鍖呭惈涓浜涘父鐢ㄧ殑C瀛楃涓插鐞嗗嚱鏁幫紝姣斿妤間富鎻愬埌鐨剆trcmp銆?聽
榪欎釜澶存枃浠惰窡C++鐨剆tring綾誨崐鐐瑰叧緋諱篃娌℃湁錛屾墍浠?lt;string>騫墮潪<string.h>鐨勨滃崌綰х増鏈濓紝浠栦滑鏄鏃犲叧緋葷殑涓や釜澶存枃浠躲?聽
瑕佽揪鍒版ゼ涓葷殑鐩殑錛屾瘮濡傚悓鏃訛細聽聽
#include聽聽
<
string
.h
>
聽聽
#include聽聽
<
string
>
聽聽
using
聽聽
namespace
聽聽std;聽聽
鎴栬吢犅?br />
#include聽聽
<
cstring
>
聽聽
#include聽聽
<
string
>
聽聽
聽
鍏朵腑<cstring>鏄笌C鏍囧噯搴撶殑<string.h>鐩稿搴旓紝浣嗚9鏈塻td鍚嶅瓧絀洪棿鐨勭増鏈?/font>
絎戣皥錛堟潵鑷珮璐ㄩ噺++錛?
C++鏍囧噯搴撳緢澶с傞潪甯稿ぇ銆傞毦浠ョ疆淇$殑澶с傛庝箞涓ぇ娉曪紵榪欎箞璇村惂錛氬湪C++鏍囧噯涓紝鍏充簬鏍囧噯搴撶殑瑙勬牸璇存槑鍗犱簡瀵嗗瘑楹婚夯300 澶氶〉錛岃繖榪樹笉鍖呮嫭鏍囧噯C 搴擄紝鍚庤呭彧鏄?浣滀負鍙傝?錛堣佸疄璇達紝鍘熸枃灝辨槸鐢ㄧ殑榪欎釜璇嶏級鍖呭惈鍦–++搴撲腑銆傚綋鐒訛紝騫墮潪鎬繪槸瓚婂ぇ瓚婂ソ錛屼絾鍦ㄧ幇鍦ㄧ殑鎯呭喌涓嬶紝紜疄瓚婂ぇ瓚婂ソ錛屽洜涓哄ぇ鐨勫簱浼氬寘鍚ぇ閲忕殑鍔熻兘銆傛爣鍑嗗簱涓殑鍔熻兘瓚婂錛屽紑鍙戣嚜宸辯殑搴旂敤紼嬪簭鏃惰兘鍊熷姪鐨勫姛鑳藉氨瓚婂銆侰++搴撳茍闈炴彁渚涗簡涓鍒囷紙寰堟槑鏄劇殑鏄紝娌℃湁鎻愪緵騫跺彂鍜屽浘褰㈢敤鎴鋒帴鍙g殑鏀寔錛夛紝浣嗙‘瀹炴彁渚涗簡寰堝銆傚嚑涔庝換浣曚簨浣犻兘鍙互姹傚姪浜庡畠銆傚湪褰掔撼鏍囧噯搴撲腑鏈変簺浠涔堜箣鍓嶏紝闇瑕佷粙緇嶄竴涓嬪畠鏄浣曠粍緇囩殑銆傚洜涓烘爣鍑嗗簱涓笢瑗垮姝や箣澶氾紝浣狅紙鎴栬薄浣犱竴鏍風殑鍏朵粬浠涔堜漢錛夋墍閫夋嫨鐨勭被鍚嶆垨鍑芥暟鍚嶅氨寰堟湁鍙兘鍜屾爣鍑嗗簱涓殑鏌愪釜鍚嶅瓧鐩稿悓銆備負浜嗛伩鍏嶈繖縐嶆儏鍐墊墍閫犳垚鐨勫悕瀛楀啿紿侊紝瀹為檯涓婃爣鍑嗗簱涓殑涓鍒囬兘琚斁鍦ㄥ悕瀛楃┖闂磗td 涓紙鍙傝鏉℃28錛夈備絾榪欏甫鏉ヤ簡涓涓柊闂銆傛棤鏁扮幇鏈夌殑C++浠g爜閮戒緷璧栦簬浣跨敤浜嗗騫寸殑浼爣鍑嗗簱涓殑鍔熻兘錛屼緥濡傦紝澹版槑鍦?lt;iostream.h>錛?lt;complex.h>錛?lt;limits.h>絳夊ご鏂囦歡涓殑鍔熻兘銆傜幇鏈夎蔣浠舵病鏈夐拡瀵逛嬌鐢ㄥ悕瀛楃┖闂磋岃繘琛岃璁★紝濡傛灉鐢╯td 鏉ュ寘瑁呮爣鍑嗗簱瀵艱嚧鐜版湁浠g爜涓嶈兘鐢紝灝嗘槸涓縐嶅彲鑰昏涓恒傦紙榪欑閲滃簳鎶借柂鐨勫仛娉曚細璁╃幇鏈変唬鐮佺殑紼嬪簭鍛樿鍑烘瘮"鍙? 鏇撮毦鍚殑璇濓級鎱戜簬琚縺鎬掔殑紼嬪簭鍛樹細浜х敓鐨勭牬鍧忓姏錛屾爣鍑嗗鍛樹細鍐沖畾涓哄寘瑁呬簡std 鐨勯偅閮ㄥ垎鏍囧噯搴撴瀯浠跺垱寤烘柊鐨勫ご鏂囦歡鍚嶃傜敓鎴愭柊澶存枃浠剁殑鏂規硶浠呬粎鏄皢鐜版湁C++澶存枃浠跺悕涓殑.h 鍘繪帀錛屾柟娉曟湰韜笉閲嶈錛屾濡傛渶鍚庝駭鐢熺殑緇撴灉涓嶄竴鑷翠篃騫朵笉閲嶈涓鏍楓傛墍浠?lt;iostream.h>鍙樻垚浜?lt;iostream>錛?lt;complex.h>鍙樻垚浜?lt;complex>錛岀瓑絳夈傚浜嶤 澶存枃浠訛紝閲囩敤鍚屾牱鐨勬柟娉曪紝浣嗗湪姣忎釜鍚嶅瓧鍓嶈繕瑕佹坊鍔犱竴涓猚銆傛墍浠 鐨?lt;string.h>鍙樻垚浜?lt;cstring>錛?lt;stdio.h>鍙樻垚浜?lt;cstdio>錛岀瓑絳夈傛渶鍚庝竴鐐規槸錛屾棫鐨凜++澶存枃浠舵槸瀹樻柟鎵鍙嶅浣跨敤鐨勶紙鍗籌紝鏄庣‘鍒楀嚭涓嶅啀鏀寔錛夛紝浣嗘棫鐨凜 澶存枃浠跺垯娌℃湁錛堜互淇濇寔瀵笴 鐨勫吋瀹規э級銆傚疄闄呬笂錛岀紪璇戝櫒鍒墮犲晢涓嶄細鍋滄瀵瑰鎴風幇鏈夎蔣浠舵彁渚涙敮鎸侊紝鎵浠ュ彲浠ラ璁★紝鏃х殑C++澶存枃浠跺湪鏈潵鍑犲勾鍐呰繕鏄細琚敮鎸併?br />鎵浠ワ紝瀹為檯鏉ヨ錛屼笅闈㈡槸C++澶存枃浠剁殑鐜扮姸錛?br />
鏃х殑C++澶存枃浠跺悕濡?lt;iostream.h>灝嗕細緇х畫琚敮鎸侊紝灝界瀹冧滑涓嶅湪瀹樻柟鏍囧噯涓傝繖浜涘ご鏂囦歡鐨勫唴瀹逛笉鍦ㄥ悕瀛楃┖闂磗td 涓?br />鏂扮殑C++澶存枃浠跺<iostream>鍖呭惈鐨勫熀鏈姛鑳藉拰瀵瑰簲鐨勬棫澶存枃浠剁浉鍚岋紝浣嗗ご鏂囦歡鐨勫唴瀹瑰湪鍚嶅瓧絀洪棿std 涓傦紙鍦ㄦ爣鍑嗗寲鐨勮繃紼嬩腑錛屽簱涓湁浜涢儴鍒嗙殑緇嗚妭琚慨鏀逛簡錛屾墍浠ユ棫澶存枃浠跺拰鏂板ご鏂囦歡涓殑瀹炰綋涓嶄竴瀹氬畬鍏ㄥ搴斻傦級
鏍囧噯C 澶存枃浠跺<stdio.h>緇х畫琚敮鎸併傚ご鏂囦歡鐨勫唴瀹逛笉鍦╯td 涓?br />鍏鋒湁C 搴撳姛鑳界殑鏂癈++澶存枃浠跺叿鏈夊<cstdio>榪欐牱鐨勫悕瀛椼傚畠浠彁渚涚殑鍐呭鍜岀浉搴旂殑鏃 澶存枃浠剁浉鍚岋紝鍙槸鍐呭鍦╯td 涓?br />鎵鏈夎繖浜涘垵鐪嬫湁鐐規紝浣嗕笉闅句範鎯畠銆傛渶澶х殑鎸戞垬鏄妸瀛楃涓插ご鏂囦歡鐞嗘竻妤氾細
<string.h>鏄棫鐨凜 澶存枃浠訛紝瀵瑰簲鐨勬槸鍩轟簬char*鐨勫瓧絎︿覆澶勭悊鍑芥暟錛?br /><cstring>鏄搴斾簬鏃 澶存枃浠剁殑std 鐗堟湰錛?br /><string>鏄寘瑁呬簡std 鐨凜++澶存枃浠訛紝瀵瑰簲鐨勬槸鏂扮殑string 綾匯?/font>
濡傛灉鑳芥帉鎻¤繖浜涳紙鎴戠浉淇′綘鑳斤級錛屽叾浣欑殑涔熷氨瀹規槗浜嗐?br />
#include聽

int
聽max(
int
聽x,
int
聽y)
{聽
return
(x
>
y
?
x:y);聽}
聽
void
聽main()聽
{聽
聽聽聽聽
int
聽(
*
ptr)();聽
聽聽聽聽
int
聽a,b,c;聽
聽聽聽聽ptr
=
max;聽
聽聽聽聽scanf(
"
%d,%d
"
,
&
a,
&
b);聽
聽聽聽聽c
=
(
*
ptr)(a,b);聽
聽聽聽聽printf(
"
a=%d,b=%d,max=%d
"
,a,b,c);聽
}
聽

#include聽
float聽*find();聽
main()聽

{聽
聽聽聽聽static聽float聽score[][4]=
{
{60,70,80,90},
{56,89,34,45},
{34,23,56,45}};聽
聽聽聽聽float聽*p;聽
聽聽聽聽int聽i,m;聽
聽聽聽聽printf("Enter聽the聽number聽to聽be聽found:");聽
聽聽聽聽scanf("%d",&m);聽
聽聽聽聽printf("the聽score聽of聽NO.%d聽are:\n",m);聽
聽聽聽聽p=find(score,m);聽
聽聽聽聽for(i=0;i<4;i++)聽
聽聽聽聽聽聽聽聽printf("%5.2f\t",*(p+i));聽
}聽

float聽*find(float(*pionter)[4],int聽n)/**//*瀹氫箟鎸囬拡鍑芥暟*/聽

{聽
聽聽聽聽float聽*pt;聽
聽聽聽聽pt=*(pionter+n);聽
聽聽聽聽return(pt);聽
}聽
int *fp(int a);//榪欓噷鏄敊璇殑錛屽洜涓烘寜鐓х粨鍚堟у拰浼樺厛綰ф潵鐪嬪氨鏄厛鍜?)緇撳悎錛岀劧鍚庡彉鎴愪簡涓涓繑鍥炴暣褰㈡寚閽堢殑鍑芥暟浜嗭紝鑰屼笉鏄嚱鏁版寚閽堬紝榪欎竴鐐瑰挨鍏墮渶瑕佹敞鎰忥紒
鍑芥暟鎸囬拡鐨勮鏄庢柟娉曚負:
string s="";//Ansistring
String s="";//string涓よ呮槸涓嶅悓鐨?/p>
銆銆緗戠粶鏄竴涓浉浜掕仈緇撶殑澶х兢浣擄紝鍥犳瑕佹兂鍔犲叆鍒拌繖涓兢浣撲腑鏉ワ紝灝變笉鑳介殢蹇冩墍嬈詫紝浠葷敱鍏翠箣鎵鍙戙傚氨濂借薄涓涓浗瀹舵垨涓涓鏃忔嫢鏈夎嚜宸辯殑璇█錛屽ぇ瀹墮兘蹇呴』閫氭檽騫跺嚟鍊熻繖縐嶈璦鏉ュ璇濅竴鏍鳳紝鐩鎬簰鑱旂粨鐨勭綉緇滀腑鍚勪釜鑺傜偣涔熼渶瑕佹嫢鏈夊叡鍚岀殑鈥滆璦鈥濓紝渚濇嵁瀹冩墍瀹氫箟鐨勮鍒欐潵鎺у埗鏁版嵁鐨勪紶閫掞紝榪欑璇█渚挎槸澶у緇忓父鍚鐨?鈥滃崗璁濄傚崗璁槸瀵圭綉緇滀腑璁懼浠ヤ綍縐嶆柟寮忎氦鎹俊鎭殑涓緋誨垪瑙勫畾鐨勭粍鍚堬紝瀹冨淇℃伅浜ゆ崲鐨勯熺巼銆佷紶杈撲唬鐮併佷唬鐮佺粨鏋勩佷紶杈撴帶鍒舵楠ゃ佸嚭閿欐帶鍒剁瓑璁稿鍙傛暟浣滃嚭瀹氫箟銆?
銆銆瀵圭綉緇滃鍏ラ棬鑰呮潵璇達紝綰風箒澶嶆潅鐨勫崗璁父甯歌浜哄ご鐥涗笉宸測旇繖浜涘崗璁悇璧蜂粈涔堜綔鐢紵瀹冧滑涔嬮棿鍙堟湁浠涔堣仈緋伙紵涓轟粈涔堟湁浜咥鍗忚榪橀渶瑕佽ˉ鍏匓鍗忚錛熻繖浜涢棶棰樻悶涓嶆竻妤氾紝寰寰鎴愪負榪涗竴姝ュ涔犵殑闅滅銆傚叾瀹炶繖涓棶棰樺簲璇ヨ繖鏍風悊瑙o細鏄厛鏈変簡鍚勭涓嶅悓璇█鐨勬皯鏃忥紝鍚庢潵闅忕潃紺句細鐨勫彂灞曪紝鎵嶆湁浜嗕笉鍚屾皯鏃忛棿浜ゆ祦鐨勯渶姹傘傜綉緇滀篃鏄繖鏍鳳紝鏈鍒濅漢浠湪灝忚寖鍥村唴寤虹珛緗戠粶錛屽彧闇瑕佽嚜宸變綔涓浜涚畝鍗曠殑綰﹀畾錛屼繚璇佽繖涓鏈夐檺鑼冨洿鍐呯殑鐢ㄦ埛閬靛畧灝卞彲浠ヤ簡錛涘埌鍚庢潵緗戠粶瑙勬ā瓚婃潵瓚婂ぇ錛屾墠鑰冭檻鍒板埗瀹氭洿涓ユ牸鐨勮绔犲埗搴﹀嵆鍗忚錛涜屼負浜嗗疄鐜板涓笉鍚岀綉緇滅殑浜掕仈錛屽張浼氬鍔犱笉灝戞柊鍗忚浣滀負琛ュ厖錛屾垨鎴愰暱涓虹粺涓鐨勬柊鏍囧噯銆?
銆銆鏁版嵁鍦ㄧ綉緇滀腑鐢辨簮浼犺緭鍒扮洰鐨勫湴錛岄渶瑕佷竴緋誨垪鐨勫姞宸ュ鐞嗭紝涓轟簡渚夸簬鐞嗚В錛屾垜浠繖閲屼笉濡ㄦ墦涓瘮鍠匯傚鏋滄垜浠妸鏁版嵁姣斿仛宸у厠鍔涳細鎴戜滑鍙互鎶婂姞宸ュ閥鍏嬪姏鐨勮澶囦綔涓烘簮錛岃屾妸娑堣垂鑰呯殑鎵嬩綔涓虹洰鐨勬潵鐪嬬湅浼氭湁浠涔堟牱鐨勪紶杈撹繃紼嬨傚閥鍏嬪姏鍘傞氬父浼氫負姣忓潡宸у厠鍔涘杈瑰姞涓婁竴灞傚寘瑁咃紝鐒跺悗榪樹細灝嗚嫢騫插閥鍏嬪姏瑁呭叆涓涓閥鍏嬪姏鐩掞紝鍐嶆妸鍑犱釜宸у厠鍔涚洅涓璧瘋鍏ヤ竴涓鍖呰錛岃繍杈撳叕鍙歌繕浼氭妸璁稿綆卞閥鍏嬪姏瑁呭叆涓涓泦瑁呯錛屽埌杈炬秷璐硅呮墍鍦ㄧ殑鍩庡競鍚庯紝鍙堜細鐢辮繍杈撳晢銆佹壒鍙戝晢銆侀浂鍞晢銆佹秷璐硅呮墦寮涓嶅悓鐨勫寘瑁呭眰銆備笉鍚屽眰嬈$殑鍖呰銆佽В鍖呰闇瑕佷笉鍚岀殑瑙勮寖鍜岃澶囷紝璁$畻鏈虹綉緇滀篃鍚屾牱鏈変笉鍚岀殑灝佽銆佷紶杈撳眰闈紝涓烘鍥介檯鏍囧噯鍖栫粍緇嘔SO浜?978 騫存彁鍑衡滃紑鏀劇郴緇熶簰榪炲弬鑰冩ā鍨嬧濓紝鍗寵憲鍚嶇殑OSI(Open System Interconnection)涓冨眰妯″瀷錛屽畠灝嗘槸鎴戜滑鍚庣畫綃囧箙涓浠嬬粛鐨勫唴瀹癸紝榪欓噷鍏堜笉灞曞紑璁鴻堪銆?緗戠粶鐨勫崗璁氨鏄敤浣滆繖浜涗笉鍚岀殑緗戠粶灞傜殑琛屼負瑙勮寖鐨勩傜綉緇滃湪鍙戝睍榪囩▼涓艦鎴愪簡寰堝涓嶅悓鐨勫崗璁棌錛屾瘡涓鍗忚鏃忛兘鍦ㄧ綉緇滅殑鍚勫眰瀵瑰簲鏈夌浉搴旂殑鍗忚錛屽叾涓綔涓篒nternet瑙勮寖鐨勬槸ICP/IP鍗忚鏃忥紝榪欎篃鏄垜浠粖澶╄璁茬殑銆?
TCP/IP鍗忚鐨勫畾涔変互鍙婂眰嬈°佸姛鑳?
浠涔堟槸TCP/IP鍗忚錛屽垝涓哄嚑灞傦紝鍚勬湁浠涔堝姛鑳斤紵
銆銆TCP/IP鍗忚鏃忓寘鍚簡寰堝鍔熻兘鍚勫紓鐨勫瓙鍗忚銆備負姝ゆ垜浠篃鍒╃敤涓婃枃鎵榪扮殑鍒嗗眰鐨勬柟寮忔潵鍓栨瀽瀹冪殑緇撴瀯銆?font style="BACKGROUND-COLOR: #7fffd4">TCP/IP灞傛妯″瀷鍏卞垎涓哄洓灞傦細搴旂敤灞傘佷紶杈撳眰銆佺綉緇滃眰銆佹暟鎹摼璺眰銆?
TCP/IP緗戠粶鍗忚
銆銆TCP/IP(Transmission Control Protocol/Internet Protocol錛屼紶杈撴帶鍒跺崗璁?緗戦棿緗戝崗璁?鏄洰鍓嶄笘鐣屼笂搴旂敤鏈涓哄箍娉涚殑鍗忚錛屽畠鐨勬祦琛屼笌Internet鐨勮繀鐚涘彂灞曞瘑鍒囩浉鍏斥擳CP/IP鏈鍒濇槸涓轟簰鑱旂綉鐨勫師鍨婣RPANET鎵璁捐鐨勶紝鐩殑鏄彁渚涗竴鏁村鏂逛究瀹炵敤銆佽兘搴旂敤浜庡縐嶇綉緇滀笂鐨勫崗璁紝浜嬪疄璇佹槑TCP/IP鍋氬埌浜嗚繖涓鐐癸紝瀹冧嬌緗戠粶浜掕仈鍙樺緱瀹規槗璧鋒潵錛屽茍涓斾嬌瓚婃潵瓚婂鐨勭綉緇滃姞鍏ュ叾涓紝鎴愪負Internet鐨勪簨瀹炴爣鍑嗐?
* 搴旂敤灞?/font>鈥斿簲鐢ㄥ眰鏄墍鏈夌敤鎴鋒墍闈㈠悜鐨勫簲鐢ㄧ▼搴忕殑緇熺О銆侷CP/IP鍗忚鏃忓湪榪欎竴灞傞潰鏈夌潃寰堝鍗忚鏉ユ敮鎸佷笉鍚岀殑搴旂敤錛岃澶氬ぇ瀹舵墍鐔熸倝鐨勫熀浜嶪nternet鐨勫簲鐢ㄧ殑瀹炵幇灝辯涓嶅紑榪欎簺鍗忚銆傚鎴戜滑榪涜涓囩淮緗戯紙WWW錛夎闂敤鍒頒簡HTTP鍗忚銆佹枃浠朵紶杈撶敤FTP鍗忚銆佺數瀛愰偖浠跺彂閫佺敤SMTP銆佸煙鍚嶇殑瑙f瀽鐢?font style="BACKGROUND-COLOR: #7fffd4">DNS鍗忚銆?榪滅▼鐧誨綍鐢?font style="BACKGROUND-COLOR: #7fffd4">Telnet鍗忚絳夌瓑錛岄兘鏄睘浜嶵CP/IP搴旂敤灞傜殑錛涘氨鐢ㄦ埛鑰岃█錛岀湅鍒扮殑鏄敱涓涓釜杞歡鎵鏋勭瓚鐨勫ぇ澶氫負鍥懼艦鍖栫殑鎿嶄綔鐣岄潰錛岃屽疄闄呭悗鍙拌繍琛岀殑渚挎槸涓婅堪鍗忚銆?
* 浼犺緭灞?/font>鈥旇繖涓灞傜殑鐨勫姛鑳戒富瑕佹槸鎻愪緵搴旂敤紼嬪簭闂寸殑閫氫俊錛孴CP/IP鍗忚鏃忓湪榪欎竴灞傜殑鍗忚鏈?font style="BACKGROUND-COLOR: #7fffd4">TCP鍜孶DP銆?
* 緗戠粶灞?/font>鈥旀槸TCP/IP鍗忚鏃忎腑闈炲父鍏抽敭鐨勪竴灞傦紝涓昏瀹氫箟浜咺P鍦板潃鏍煎紡錛屼粠鑰岃兘澶熶嬌寰椾笉鍚屽簲鐢ㄧ被鍨嬬殑鏁版嵁鍦↖nternet涓婇氱晠鍦頒紶杈擄紝IP鍗忚灝辨槸涓涓綉緇滃眰鍗忚銆?
* 緗戠粶鎺ュ彛灞?/font>鈥旇繖鏄疶CP/IP杞歡鐨勬渶浣庡眰錛岃礋璐f帴鏀禝P鏁版嵁鍖呭茍閫氳繃緗戠粶鍙戦佷箣錛屾垨鑰呬粠緗戠粶涓婃帴鏀剁墿鐞嗗撫錛屾娊鍑篒P鏁版嵁鎶ワ紝浜ょ粰IP灞傘?
1錛嶵CP/UDP鍗忚
銆銆TCP (Transmission Control Protocol)鍜孶DP(User Datagram Protocol)鍗忚灞炰簬浼犺緭灞傚崗璁傚叾涓璗CP鎻愪緵IP鐜涓嬬殑鏁版嵁鍙潬浼犺緭錛屽畠鎻愪緵鐨勬湇鍔″寘鎷暟鎹祦浼犻併佸彲闈犳с佹湁鏁堟祦鎺с佸叏鍙屽伐鎿嶄綔鍜屽璺鐢ㄣ傞氳繃闈㈠悜榪炴帴銆佺鍒扮鍜屽彲闈犵殑鏁版嵁鍖呭彂閫併傞氫織璇達紝瀹冩槸浜嬪厛涓烘墍鍙戦佺殑鏁版嵁寮杈熷嚭榪炴帴濂界殑閫氶亾錛岀劧鍚庡啀榪涜鏁版嵁鍙戦侊紱鑰孶DP鍒欎笉涓篒P鎻愪緵鍙潬鎬с佹祦鎺ф垨宸敊鎭㈠鍔熻兘銆備竴鑸潵璇達紝TCP瀵瑰簲鐨勬槸鍙潬鎬ц姹傞珮鐨勫簲鐢紝鑰孶DP瀵瑰簲鐨勫垯鏄彲闈犳ц姹備綆銆佷紶杈撶粡嫻庣殑搴旂敤銆俆CP鏀寔鐨勫簲鐢ㄥ崗璁富瑕佹湁錛歍elnet銆丗TP銆丼MTP絳夛紱UDP鏀寔鐨勫簲鐢ㄥ眰鍗忚涓昏鏈夛細NFS錛堢綉緇滄枃浠剁郴緇燂級銆丼NMP錛堢畝鍗曠綉緇滅鐞嗗崗璁級銆丏NS錛堜富鍩熷悕縐扮郴緇燂級銆乀FTP錛堥氱敤鏂囦歡浼犺緭鍗忚錛夌瓑銆?
IP鍗忚鐨勫畾涔夈両P鍦板潃鐨勫垎綾誨強鐗圭偣
浠涔堟槸IP鍗忚錛孖P鍦板潃濡備綍琛ㄧず錛屽垎涓哄嚑綾伙紝鍚勬湁浠涔堢壒鐐癸紵
銆銆涓轟簡渚夸簬瀵誨潃鍜屽眰嬈″寲鍦版瀯閫犵綉緇滐紝IP鍦板潃琚垎涓篈銆丅銆丆銆丏銆丒浜旂被錛屽晢涓氬簲鐢ㄤ腑鍙敤鍒癆銆丅銆丆涓夌被銆?
銆銆IP鍗忚(Internet Protocol)鍙堢О浜掕仈緗戝崗璁紝鏄敮鎸佺綉闂翠簰榪炵殑鏁版嵁鎶ュ崗璁紝瀹冧笌TCP鍗忚錛堜紶杈撴帶鍒跺崗璁級涓璧鋒瀯鎴愪簡TCP/IP鍗忚鏃忕殑鏍稿績銆傚畠鎻愪緵緗戦棿榪炴帴鐨勫畬鍠勫姛鑳斤紝 鍖呮嫭IP鏁版嵁鎶ヨ瀹氫簰榪炵綉緇滆寖鍥村唴鐨処P鍦板潃鏍煎紡銆?
銆銆Internet 涓婏紝涓轟簡瀹炵幇榪炴帴鍒頒簰鑱旂綉涓婄殑緇撶偣涔嬮棿鐨勯氫俊錛屽繀欏諱負姣忎釜緇撶偣錛堝叆緗戠殑璁$畻鏈猴級鍒嗛厤涓涓湴鍧錛屽茍涓斿簲褰撲繚璇佽繖涓湴鍧鏄叏緗戝敮涓鐨勶紝榪欎究鏄疘P鍦板潃銆?
銆銆鐩墠鐨処P鍦板潃錛圛Pv4錛欼P絎?鐗堟湰錛夌敱32涓簩榪涘埗浣嶈〃紺猴紝姣?浣嶄簩榪涘埗鏁頒負涓涓暣鏁幫紝涓棿鐢卞皬鏁扮偣闂撮殧錛屽159.226.41.98錛屾暣涓狪P鍦板潃絀洪棿鏈?緇?浣嶄簩榪涘埗鏁幫紝鐢辮〃紺轟富鏈烘墍鍦ㄧ殑緗戠粶鐨勫湴鍧錛堢被浼奸儴闃熺殑緙栧彿錛変互鍙婁富鏈哄湪璇ョ綉緇滀腑鐨勬爣璇嗭紙濡傚悓澹叺鍦ㄨ閮ㄩ槦鐨勭紪鍙鳳級鍏卞悓緇勬垚銆?
銆銆涓轟簡渚夸簬瀵誨潃鍜屽眰嬈″寲鐨勬瀯閫犵綉緇滐紝IP鍦板潃琚垎涓篈銆丅銆丆銆丏銆丒浜旂被錛屽晢涓氬簲鐢ㄤ腑鍙敤鍒癆銆丅銆丆涓夌被銆?
* A綾誨湴鍧錛欰綾誨湴鍧鐨勭綉緇滄爣璇嗙敱絎竴緇?浣嶄簩榪涘埗鏁拌〃紺猴紝緗戠粶涓殑涓繪満鏍囪瘑鍗?緇?浣嶄簩榪涘埗鏁幫紝A綾誨湴鍧鐨勭壒鐐規槸緗戠粶鏍囪瘑鐨勭涓浣嶄簩榪涘埗鏁板彇鍊煎繀欏諱負鈥?鈥濄備笉闅劇畻鍑猴紝A綾誨湴鍧鍏佽鏈?26涓綉孌碉紝姣忎釜緗戠粶澶х害鍏佽鏈?670涓囧彴涓繪満錛岄氬父鍒嗛厤緇欐嫢鏈夊ぇ閲忎富鏈虹殑緗戠粶錛堝涓誨共緗戯級銆?
* B綾誨湴鍧錛欱綾誨湴鍧鐨勭綉緇滄爣璇嗙敱鍓嶄袱緇?浣嶄簩榪涘埗鏁拌〃紺猴紝緗戠粶涓殑涓繪満鏍囪瘑鍗犱袱緇?浣嶄簩榪涘埗鏁幫紝B綾誨湴鍧鐨勭壒鐐規槸緗戠粶鏍囪瘑鐨勫墠涓や綅浜岃繘鍒舵暟鍙栧煎繀欏諱負鈥?0鈥濄侭綾誨湴鍧鍏佽鏈?6384涓綉孌碉紝姣忎釜緗戠粶鍏佽鏈?5533鍙頒富鏈猴紝閫傜敤浜庣粨鐐規瘮杈冨鐨勭綉緇滐紙濡傚尯鍩熺綉錛夈?
* C綾誨湴鍧錛欳綾誨湴鍧鐨勭綉緇滄爣璇嗙敱鍓?緇?浣嶄簩榪涘埗鏁拌〃紺猴紝緗戠粶涓富鏈烘爣璇嗗崰1緇?浣嶄簩榪涘埗鏁幫紝C綾誨湴鍧鐨勭壒鐐規槸緗戠粶鏍囪瘑鐨勫墠3浣嶄簩榪涘埗鏁板彇鍊煎繀欏諱負鈥?10鈥濄傚叿鏈塁綾誨湴鍧鐨勭綉緇滃厑璁告湁254鍙頒富鏈猴紝閫傜敤浜庣粨鐐規瘮杈冨皯鐨勭綉緇滐紙濡傛牎鍥綉錛夈?
銆銆涓轟簡渚夸簬璁板繂錛岄氬父涔犳儻閲囩敤4涓崄榪涘埗鏁版潵琛ㄧず涓涓狪P鍦板潃錛屽崄榪涘埗鏁頒箣闂撮噰鐢ㄥ彞鐐光?鈥濅簣浠ュ垎闅斻傝繖縐岻P鍦板潃鐨勮〃紺烘柟娉曚篃琚О涓虹偣鍒嗗崄榪涘埗娉曘傚浠ヨ繖縐嶆柟寮忚〃紺猴紝A綾葷綉緇滅殑IP鍦板潃鑼冨洿涓?.0.0.1錛?27.255.255.254錛汢綾葷綉緇滅殑IP鍦板潃鑼冨洿涓猴細128.1.0.1錛?91.255.255.254錛汣綾葷綉緇滅殑IP鍦板潃鑼冨洿涓猴細192.0.1.1錛?23.255.255.254銆?
銆銆鐢變簬緗戠粶鍦板潃绱у紶銆佷富鏈哄湴鍧鐩稿榪囧墿錛岄噰鍙栧瓙緗戞帺鐮佺殑鏂瑰紡鏉ユ寚瀹氱綉孌靛彿銆?
銆銆TCP/IP鍗忚涓庝綆灞傜殑鏁版嵁閾捐礬灞傚拰鐗╃悊灞傛棤鍏籌紝榪欎篃鏄疶CP/IP鐨勯噸瑕佺壒鐐廣傛鍥犱負濡傛 錛屽畠鑳藉箍娉涘湴鏀寔鐢變綆涓ゅ眰鍗忚鏋勬垚鐨勭墿鐞嗙綉緇滅粨鏋勩傜洰鍓嶅凡浣跨敤TCP/IP榪炴帴鎴愭床闄呯綉銆佸叏鍥界綉涓庤法鍦板尯緗戙?/font>
#include
<
iostream
>
#include
<
memory
>
using
聽
namespace
聽std;
//
#define聽iMax聽1000000
#define
聽iMax聽100
int
聽Odd[iMax];
int
聽main()
{
聽聽聽聽memset(Odd,
true
,
sizeof
(Odd));
聽聽聽聽
for
(
int
聽i
=
2
;i
<=
iMax
/
2
;i
++
)
聽聽聽聽
{
聽聽聽聽聽聽聽聽
if
(Odd[i])
聽聽聽聽聽聽聽聽
{
聽聽聽聽聽聽聽聽聽聽聽聽
for
(
int
聽j
=
1
;j
<
iMax
/
i;j
++
)
聽聽聽聽聽聽聽聽聽聽聽聽
{
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽Odd[i
+
i
*
j]
=
false
;
聽聽聽聽聽聽聽聽聽聽聽聽}
聽聽聽聽聽聽聽聽}
聽聽聽聽}
聽聽聽聽
for
(
int
聽k
=
2
;k
<
iMax;k
++
)
聽聽聽聽聽聽聽聽
if
(Odd[k])
聽聽聽聽聽聽聽聽聽聽聽聽cout聽
<<
k
<<
endl;
聽聽聽聽
return
聽
1
;
}