°²×°eclipse-cpp-galileo-win32.zip
ÒÔÏÂÊÇ×îÐÂeclipse cpp ¿ª·¢IDE
http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/SR1/eclipse-cpp-galileo-SR1-win32.zip
ÉèÖÃmake³ÌÐò
ÉèÖÃbinary parser
н¨Ò»¸öC++¹¤³Ì
±àдͷÎļþ
±àдʵÏÖ
¸ÄдMakefile ¡¾×¢ÒâCCºÍLNÖ¸ÏòÄã°²×°µÄVCµÄ·¾¶¡¿
CC = cl.exe /EHsc /MT /c /I "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include" /I "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include" /I "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Include"
LN = link.exe /LIBPATH:"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\lib" /LIBPATH:"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\lib" /LIBPATH:"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Lib"
main = main
all: $(main).exe
@cmd /c $(main)
$(main).exe: $(main).obj
$(LN) -out:$(main).exe $(main).obj
$(main).obj: $(main).cpp
$ ......
°²×°eclipse-cpp-galileo-win32.zip
ÒÔÏÂÊÇ×îÐÂeclipse cpp ¿ª·¢IDE
http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/SR1/eclipse-cpp-galileo-SR1-win32.zip
ÉèÖÃmake³ÌÐò
ÉèÖÃbinary parser
н¨Ò»¸öC++¹¤³Ì
±àдͷÎļþ
±àдʵÏÖ
¸ÄдMakefile ¡¾×¢ÒâCCºÍLNÖ¸ÏòÄã°²×°µÄVCµÄ·¾¶¡¿
CC = cl.exe /EHsc /MT /c /I "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include" /I "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include" /I "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Include"
LN = link.exe /LIBPATH:"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\lib" /LIBPATH:"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\lib" /LIBPATH:"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Lib"
main = main
all: $(main).exe
@cmd /c $(main)
$(main).exe: $(main).obj
$(LN) -out:$(main).exe $(main).obj
$(main).obj: $(main).cpp
$ ......
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define err(msg) perror(msg)
static void mkdirs(const char *dir)
{
char tmp[1024];
char *p;
if (strlen(dir) == 0 || dir == NULL) {
printf("strlen(dir) is 0 or dir is NULL.\n");
return;
}
memset(tmp, 0, sizeof(tmp));
strncpy(tmp, dir, strlen(dir));
if (tmp[0] == '/' && tmp[1]== '/')
p = strchr(tmp ......
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define err(msg) perror(msg)
static void mkdirs(const char *dir)
{
char tmp[1024];
char *p;
if (strlen(dir) == 0 || dir == NULL) {
printf("strlen(dir) is 0 or dir is NULL.\n");
return;
}
memset(tmp, 0, sizeof(tmp));
strncpy(tmp, dir, strlen(dir));
if (tmp[0] == '/' && tmp[1]== '/')
p = strchr(tmp ......
MYSQLÔÚ C API ÖпÉÓõĺ¯Êý£º
mysql_affected_rows()
·µ»Ø±»×îеÄUPDATE, DELETE»òINSERT²éѯӰÏìµÄÐÐÊý¡£
mysql_close()
¹Ø±ÕÒ»¸ö·þÎñÆ÷Á¬½Ó¡£
mysql_connect()
Á¬½ÓÒ»¸öMySQL·þÎñÆ÷¡£¸Ãº¯Êý²»ÍƼö£»Ê¹ÓÃmysql_real_connect()´úÌæ¡£
mysql_change_user()
¸Ä±äÔÚÒ»¸ö´ò¿ªµÄÁ¬½ÓÉϵÄÓû§ºÍÊý¾Ý¿â¡£
mysql_create_db()
´´½¨Ò»¸öÊý¾Ý¿â¡£¸Ãº¯Êý²»ÍƼö£»¶øÊ¹ÓÃSQLÃüÁîCREATE DATABASE¡£
mysql_data_seek()
ÔÚÒ»¸ö²éѯ½á¹û¼¯ºÏÖÐËÑѰһÈÎÒâÐС£
mysql_debug()
Óøø¶¨×Ö·û´®×öÒ»¸öDBUG_PUSH¡£
mysql_drop_db()
ÅׯúÒ»¸öÊý¾Ý¿â¡£¸Ãº¯Êý²»ÍƼö£»¶øÊ¹ÓÃSQLÃüÁîDROP DATABASE¡£
mysql_dump_debug_info()
È÷þÎñÆ÷½«µ÷ÊÔÐÅϢдÈëÈÕÖ¾Îļþ¡£
mysql_eof()
È·¶¨ÊÇ·ñÒѾ¶Áµ½Ò»¸ö½á¹û¼¯ºÏµÄ×îºóÒ»ÐС£Õ⹦Äܱ»·´¶Ô; mysql_errno()»òmysql_error()¿ÉÒÔÏà·´±»Ê¹Óá£
mysql_errno()
·µ»Ø×î½ü±»µ÷ÓõÄMySQLº¯ÊýµÄ³ö´í±àºÅ¡£
mysql_error()
·µ»Ø×î½ü±»µ÷ÓõÄMySQLº¯ÊýµÄ³ö´íÏûÏ¢¡£
mysql_escape_string()
ÓÃÔÚSQLÓï¾äÖеÄ×Ö·û´®µÄתÒåÌØÊâ×Ö·û¡£
mysql_fetch_field()
·µ»ØÏÂÒ»¸ö±í×ֶεÄÀàÐÍ¡£
mysql_fetch_field_direct ()
·µ»ØÒ»¸ö±í×ֶεÄÀàÐÍ£¬¸ø ......
MYSQLÔÚ C API ÖпÉÓõĺ¯Êý£º
mysql_affected_rows()
·µ»Ø±»×îеÄUPDATE, DELETE»òINSERT²éѯӰÏìµÄÐÐÊý¡£
mysql_close()
¹Ø±ÕÒ»¸ö·þÎñÆ÷Á¬½Ó¡£
mysql_connect()
Á¬½ÓÒ»¸öMySQL·þÎñÆ÷¡£¸Ãº¯Êý²»ÍƼö£»Ê¹ÓÃmysql_real_connect()´úÌæ¡£
mysql_change_user()
¸Ä±äÔÚÒ»¸ö´ò¿ªµÄÁ¬½ÓÉϵÄÓû§ºÍÊý¾Ý¿â¡£
mysql_create_db()
´´½¨Ò»¸öÊý¾Ý¿â¡£¸Ãº¯Êý²»ÍƼö£»¶øÊ¹ÓÃSQLÃüÁîCREATE DATABASE¡£
mysql_data_seek()
ÔÚÒ»¸ö²éѯ½á¹û¼¯ºÏÖÐËÑѰһÈÎÒâÐС£
mysql_debug()
Óøø¶¨×Ö·û´®×öÒ»¸öDBUG_PUSH¡£
mysql_drop_db()
ÅׯúÒ»¸öÊý¾Ý¿â¡£¸Ãº¯Êý²»ÍƼö£»¶øÊ¹ÓÃSQLÃüÁîDROP DATABASE¡£
mysql_dump_debug_info()
È÷þÎñÆ÷½«µ÷ÊÔÐÅϢдÈëÈÕÖ¾Îļþ¡£
mysql_eof()
È·¶¨ÊÇ·ñÒѾ¶Áµ½Ò»¸ö½á¹û¼¯ºÏµÄ×îºóÒ»ÐС£Õ⹦Äܱ»·´¶Ô; mysql_errno()»òmysql_error()¿ÉÒÔÏà·´±»Ê¹Óá£
mysql_errno()
·µ»Ø×î½ü±»µ÷ÓõÄMySQLº¯ÊýµÄ³ö´í±àºÅ¡£
mysql_error()
·µ»Ø×î½ü±»µ÷ÓõÄMySQLº¯ÊýµÄ³ö´íÏûÏ¢¡£
mysql_escape_string()
ÓÃÔÚSQLÓï¾äÖеÄ×Ö·û´®µÄתÒåÌØÊâ×Ö·û¡£
mysql_fetch_field()
·µ»ØÏÂÒ»¸ö±í×ֶεÄÀàÐÍ¡£
mysql_fetch_field_direct ()
·µ»ØÒ»¸ö±í×ֶεÄÀàÐÍ£¬¸ø ......
C£¬C++ÍøÂç±à³Ìѧϰ¼òÃ÷Ö¸ÄÏ
1. ÔúʵµÄC£¬C++»ù´¡ÖªÊ¶
²Î¿¼×ÊÁÏ¡¶C³ÌÐòÉè¼Æ¡·£¬¡¶C++ primer¡·¡£
2. TCP/IPÐÒé
¾µäÊéÊÇ£ºW.Richard Stevens Öø¡¶TCP/IPÏê½â¡·Èý¾íÊ飬¾í1ÊÇÐÒ飬¾í2ÊÇʵÏÖ£¬¾í3ÊÇTCPÊÂÎñÐÒéµÈ¡£»¹Óйٷ½µÄÐÒéÎĵµ£ºRFC
µ±È»Ò²¿ÉÒÔÔÚÍøÉÏÏÂÔØµç×ÓÊé¡£
¾µäµÄ¿ªÔ´ÐÒé·ÖÎö¹¤¾ß£ºWireshark.
¼òµ¥µÄ¿ªÔ´TCP/IPÐÒéÕ»£ºLwIP£¬»òÕßLinux 1.0Àï°üº¬µÄÐÒéÕ»£¬µ±È»Ò²¿ÉÒÔ¿´¿´FreeBSDµÄTCP/IPÐÒéÕ»¡£
3. ʵ¼ÊÖ¸µ¼ÍøÂç±à³ÌµÄÊé
Winodwsƽ̨£¬¾µäÊéÊÇ¡¶windowsÍøÂç±à³Ì¡·µÚ¶þ°æ¡£
Linuxƽ̨£¬¾µäÊéÊÇW.Richard Stevens Öø¡¶UNIXÍøÂç±à³Ì¡·¡£
4. VC++¿ª·¢
ºî½ÝÖø ¡¶ÉîÈëdz³öMFC¡·£¬ ¡¶windows³ÌÐòÉè¼Æ¡·£¬¡¶WindowsºËÐıà³Ì¡·£¬MicrosoftµÄMSDN¡£
ÏÂÔØÊé¼®
1. Linux TCP/IP ÐÒéÕ»·ÖÎö£¬ÕâÊÇchinaunix.netÂÛ̳ÀïµÄNÈËдµÄµç×ÓÊ飬¿ÉÒÔÔÚÕâÀïÏÂÔØPDF°æ±¾¡£
http://blog.chinaunix.net/u2/85263/showart_1810785.html
2. ¡¶TCP/IPÏê½â¡·Èý¾íÊ飬PDF°æ±¾ÏÂÔØµØÖ·£º
¡¶TCP/IPÏê½â£¬¾í1£ºÐÒé¡·£¬http://www.laogu.com/ds_510.htm
¡¶TCP/IPÏê½â£¬¾í2£ºÊµÏÖ¡·£¬http://www.laogu.com/ds_511.htm
¡¶TCP/IPÏê½â£¬¾í3£ºtcpÊÂÎñÐÒéµÈ¡ ......
C£¬C++ÍøÂç±à³Ìѧϰ¼òÃ÷Ö¸ÄÏ
1. ÔúʵµÄC£¬C++»ù´¡ÖªÊ¶
²Î¿¼×ÊÁÏ¡¶C³ÌÐòÉè¼Æ¡·£¬¡¶C++ primer¡·¡£
2. TCP/IPÐÒé
¾µäÊéÊÇ£ºW.Richard Stevens Öø¡¶TCP/IPÏê½â¡·Èý¾íÊ飬¾í1ÊÇÐÒ飬¾í2ÊÇʵÏÖ£¬¾í3ÊÇTCPÊÂÎñÐÒéµÈ¡£»¹Óйٷ½µÄÐÒéÎĵµ£ºRFC
µ±È»Ò²¿ÉÒÔÔÚÍøÉÏÏÂÔØµç×ÓÊé¡£
¾µäµÄ¿ªÔ´ÐÒé·ÖÎö¹¤¾ß£ºWireshark.
¼òµ¥µÄ¿ªÔ´TCP/IPÐÒéÕ»£ºLwIP£¬»òÕßLinux 1.0Àï°üº¬µÄÐÒéÕ»£¬µ±È»Ò²¿ÉÒÔ¿´¿´FreeBSDµÄTCP/IPÐÒéÕ»¡£
3. ʵ¼ÊÖ¸µ¼ÍøÂç±à³ÌµÄÊé
Winodwsƽ̨£¬¾µäÊéÊÇ¡¶windowsÍøÂç±à³Ì¡·µÚ¶þ°æ¡£
Linuxƽ̨£¬¾µäÊéÊÇW.Richard Stevens Öø¡¶UNIXÍøÂç±à³Ì¡·¡£
4. VC++¿ª·¢
ºî½ÝÖø ¡¶ÉîÈëdz³öMFC¡·£¬ ¡¶windows³ÌÐòÉè¼Æ¡·£¬¡¶WindowsºËÐıà³Ì¡·£¬MicrosoftµÄMSDN¡£
ÏÂÔØÊé¼®
1. Linux TCP/IP ÐÒéÕ»·ÖÎö£¬ÕâÊÇchinaunix.netÂÛ̳ÀïµÄNÈËдµÄµç×ÓÊ飬¿ÉÒÔÔÚÕâÀïÏÂÔØPDF°æ±¾¡£
http://blog.chinaunix.net/u2/85263/showart_1810785.html
2. ¡¶TCP/IPÏê½â¡·Èý¾íÊ飬PDF°æ±¾ÏÂÔØµØÖ·£º
¡¶TCP/IPÏê½â£¬¾í1£ºÐÒé¡·£¬http://www.laogu.com/ds_510.htm
¡¶TCP/IPÏê½â£¬¾í2£ºÊµÏÖ¡·£¬http://www.laogu.com/ds_511.htm
¡¶TCP/IPÏê½â£¬¾í3£ºtcpÊÂÎñÐÒéµÈ¡ ......
1.ÔÚc³ÌÐòµ÷ÓÃc³ÌÐòºÍc++³ÌÐòµ÷ÓÃc++³ÌÐòʱ£¬²»Éæ¼°¡£
2.ÔÚc³ÌÐòµ÷ÓÃc++³ÌÐòʱ£¬C++µÄÍ·ÎļþÐèÌí¼Óextern "C"£¬µ«ÊÇÔÚCÓïÑÔÖв»ÄÜÖ±½ÓÒýÓÃÉùÃ÷ÁËextern "C"µÄ¸ÃÍ·Îļþ£¬Ó¦¸Ã½ö½«CÎļþÖн«C++Öж¨ÒåµÄextern "C"º¯ÊýÉùÃ÷ΪexternÀàÐÍ¡£
3.ÔÚc++³ÌÐòµ÷ÓÃc³ÌÐòʱ£¬ÔÚ°üº¬CÓïÑÔÍ·Îļþ£¨¼ÙÉèΪcExample.h£©Ê±£¬Ðè½øÐÐÏÂÁд¦Àí£º
extern "C"
{
££include "cExample.h"
} ......
#include <Windows.h>
#include <math.h>
#include "resource.h"
#define PI 3.1415976/180
int dwCenterX,dwCenterY,dwRadius;
const TCHAR *szAppName=TEXT("Clock");
LRESULT CALLBACK ProcWinMain(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam);
void ShowTime(HWND hwnd,HDC hdc);
void CalcClockParam(HWND hwnd);
void DrawDot(HDC hdc,int dwDegreeInc,int dwSmallRadius);
int CalX(double dwNowDegreen,int dwR);
int CalY(double dwNowDegreen,int dwR);
void DrawLine(HDC hdc,double dwDegreen,int dwRadiusAdjust);
int WINAPI WinMain( __in HINSTANCE hInstance, __in_opt HINSTANCE hPrevInstance, __in_opt LPSTR lpCmdLine, __in int nShowCmd )
{
WNDCLASS wc;
MSG msg;
HWND hwnd;
RtlZeroMemory(&wc,sizeof(WNDCLASS));
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
wc.hCursor=LoadCursor(hInstance,IDC_ARROW);
wc.hIcon=LoadIcon(hInstance,MAKEINTRESOURCE(ICO_MAIN));
wc.hInstance=hInstance;
wc.lpfnWndProc=ProcWinMain;
wc.lp ......