Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

½«Win32 C/C++Ó¦ÓóÌÐòÇ¨ÒÆµ½Linux

±¾ÎĵÄÄÚÈÝÊÇ Win32 API£¨ÌرðÊǽø³Ì¡¢Ï̺߳͹²ÏíÄÚ´æ·þÎñ£©µ½ POWER ÉÏ Linux µÄÓ³Éä¡£±¾ÎÄ¿ÉÒÔ°ïÖúÄúÈ·¶¨ÄÄÖÖÓ³Éä·þÎñ×îÊʺÏÄúµÄÐèÒª¡£×÷ÕßÏòÄúÏêϸ½éÉÜÁËËûÔÚÒÆÖ² Win32 C/C++ Ó¦ÓóÌÐòʱÓöµ½µÄ API Ó³Éä¡£
¸ÅÊö
Óкܶ෽ʽ¿ÉÒÔ½« Win32 C/C++ Ó¦ÓóÌÐòÒÆÖ²ºÍÇ¨ÒÆµ½ pSeries ƽ̨¡£Äú¿ÉÒÔʹÓÃÃâ·ÑÈí¼þ»òÕßµÚÈý·½¹¤¾ßÀ´½« Win32 Ó¦ÓóÌÐò´úÂëÒÆµ½ Linux¡£ÔÚÎÒÃǵķ½°¸ÖУ¬ÎÒÃǾö¶¨Ê¹ÓÃÒ»¸ö¿ÉÒÆÖ²²ãÀ´³éÏóϵͳ API µ÷Ó᣿ÉÒÆÖ²²ã½«Ê¹ÎÒÃǵÄÓ¦ÓóÌÐò¾ßÓÐÒÔÏÂÓÅÊÆ£º
ÓëÓ²¼þÎ޹ء£
Óë²Ù×÷ϵͳÎ޹ء£
Óë²Ù×÷ϵͳÉϰ汾Óë°æ±¾¼äµÄ±ä»¯Î޹ء£
Óë²Ù×÷ϵͳ API ·ç¸ñ¼°´íÎó´úÂëÎ޹ء£
Äܹ»Í³Ò»µØÔÚ¶Ô OS µÄµ÷ÓÃÖÐÖÃÈëÐÔÄÜºÍ RAS ¹³×Ó£¨hook£©¡£
ÓÉÓÚ Windows »·¾³Óë pSeries Linux »·¾³ÓкܴóÇø±ð£¬ËùÒÔ½øÐпç UNIX ƽ̨µÄÒÆÖ²±È½øÐÐ´Ó Win32 ƽ̨µ½ UNIX ƽ̨µÄÒÆÖ²ÒªÈÝÒ׵öࡣÕâÊÇ¿ÉÒÔÏëµ½µÄ£¬ÒòΪºÜ¶à UNIX ϵͳ¶¼Ê¹Óù²Í¬µÄÉè¼ÆÀíÄÔÚÓ¦ÓóÌÐò²ãÓзdz£¶àµÄÀàËÆÖ®´¦¡£²»¹ý£¬Win32 API ÔÚÒÆÖ²µ½ Linux ʱÊÇÊÜÏ޵ġ£±¾ÎÄÆÊÎöÁËÓÉÓÚ Linux ºÍ Win32 Ö®¼äÉè¼ÆµÄ²»Í¬¶øÒý·¢µÄÎÊÌâ¡£
³õʼ»¯ºÍÖÕÖ¹
ÔÚ Win2K/NT ÉÏ£¬DLL µÄ³õʼ»¯ºÍÖÕÖ¹Èë¿ÚµãÊÇ _DLL_InitTerm º¯Êý¡£µ±Ã¿¸öеĽø³Ì»ñµÃ¶Ô DLL µÄ·ÃÎÊʱ£¬Õâ¸öº¯Êý³õʼ»¯ DLL Ëù±ØÐèµÄ»·¾³¡£µ±Ã¿¸öеĽø³ÌÊÍ·ÅÆä¶Ô DLL µÄ·ÃÎÊʱ£¬Õâ¸öº¯ÊýΪÄǸö»·¾³ÖÕÖ¹ DLL¡£µ±ÄúÁ´½Óµ½ÄǸö DLL ʱ£¬Õâ¸öº¯Êý»á×Ô¶¯µØ±»µ÷Ó᣶ÔÓ¦ÓóÌÐò¶øÑÔ£¬_DLL_InitTerm º¯ÊýÖаüº¬ÁËÁíÍâÒ»¸ö³õʼ»¯ºÍÖÕÖ¹Àý³Ì¡£
ÔÚ Linux ÉÏ£¬GCC ÓÐÒ»¸öÀ©Õ¹£¬ÔÊÐíÖ¸¶¨µ±¿ÉÖ´ÐÐÎļþ»òÕß°üº¬ËüµÄ¹²Ïí¶ÔÏóÆô¶¯»òֹͣʱӦ¸Ãµ÷ÓÃij¸öº¯Êý¡£Óï·¨ÊÇ __attribute__((constructor)) »ò __attribute__((destructor))¡£ÕâЩ»ù±¾ÉÏÓë¹¹Ô캯Êý¼°Îö¹¹º¯ÊýÏàͬ£¬¿ÉÒÔÌæ´ú glibc ¿âÖÐµÄ _init ºÍ _fini º¯Êý¡£
ÕâЩº¯ÊýµÄ C Ô­ÐÍÊÇ£º
void __attribute__ ((constructor)) app_init(void);
void __attribute__ ((destructor)) app_fini(void);
Win32 sample
_DLL_InitTerm(HMODULE modhandle, DWORD fdwReason, LPVOID lpvReserved)
{
WSADATA Data;
switch (fdwReason)
{
case DLL_PROCESS_ATTACH:
if (_CRT_init() == -1)
return 0L;
/* start with initialization code */


Ïà¹ØÎĵµ£º

Excel writing and reading with pure c API

Reading and Writing Excel file with pure C api in windows system. tested on windows 2000, hope it can help you:
#ifndef _WINXLS_H_
#define _WINXLS_H_
/*============================================================================*
*      Include Files
*================== ......

C++´¦ÀíconstÀàÐͱäÁ¿ÓëCµÄ²»Í¬

    constÓë#define×î´óµÄ²î±ð£¬ConstÔÚ¶ÑÕ»·ÖÅäÁ˿ռ䣬¶ø#defineÖ»ÊǰѾßÌåÊýÖµÖ±½Ó´«µÝµ½Ä¿±ê±äÁ¿°ÕÁË¡£»òÕß˵£¬constµÄ³£Á¿ÊÇÒ»¸öRun-TimeµÄ¸ÅÄËûÔÚ³ÌÐòÖÐȷȷʵʵµÄ´æÔÚ¿ÉÒÔ±»µ÷Óᢴ«µÝ¡£¶ø#define³£Á¿ÔòÊÇÒ»¸öCompile-Time¸ÅÄËüµÄÉúÃüÖÜÆÚÖ¹ÓÚ±àÒëÆÚ£ºÔÚʵ¼Ê³ÌÐòÖÐËûÖ»ÊÇÒ»¸ö³£Êý¡¢Ò»¸öÃüÁîÖе ......

ANSI C——¿É±ä²ÎÊý


¡¾Ô­ÐÍ¡¿
      type fun( type arg1, type arg2, ...
);
¡¾ÃèÊö¡¿
       Ö÷ÒªÓÃÔÚ²ÎÊý¸öÊý²»È·¶¨µÄº¯ÊýÖУ¬ÀýÈ磺printfº¯Êý¡£
¡¾Ê¹Ó÷½·¨¡¿
²Î¿¼£ºglib/manual/Add.c
#include <stdarg.h>
#include <stdio.h>
int add_em_up (int coun ......

c ÓïÑÔÖÐfread()º¯ÊýʹÓÃʱӦ¸Ã×¢ÒâµÄµØ·½

ÓÃcÓïÑÔ×öÁ˸öͨѶ¼£¬ÏµÍ³Ò»ÔËÐÐʱ±ã½«Êý¾ÝÎļþ¼ÓÔØ½øÄڴ棬²¢ÓÃÁ´±í´æ´¢¡£Í˳öϵͳʱ£¬×Ô¶¯½«Á´±íÖеÄËùÓнڵãÔÙ´æÈëÎļþ¡£
¿ÉÊÇÏÖÔÚ£¬Ã¿´ÎÍ˳öϵͳ£¬ÎļþÀï¶¼»á±ÈÁ´±í¶à´æ´¢Ò»Ìõ¼Ç¼¡£
È磺ÏÖÔÚÖ»ÓÐÁ½Ìõ¼Ç¼£¬Í˳öºóÔÚÆô¶¯Ê±Ò»²éѯ£¬¾Í»á¶àÒ»ÌõÂҼǼ£¨ÏµÍ³×Ô¼º¼ÓµÄ£©¡£
¼ÓÔØÎļþµÄ²¿·Ö´úÂëÈçÏ£º
/*ÅжÏÎļþÊÇ·ñ ......

(ת)C³ÌÐòµÄ±àÒë¹ý³Ì

±àÒ룬±àÒë³ÌÐò¶ÁȡԴ³ÌÐò£¨×Ö·ûÁ÷£©£¬¶ÔÖ®½øÐдʷ¨ºÍÓï·¨µÄ·ÖÎö£¬½«¸ß¼¶ÓïÑÔÖ¸Áîת»»Îª¹¦ÄܵÈЧµÄ»ã±à´úÂ룬ÔÙÓÉ»ã±à³ÌÐòת»»Îª»úÆ÷ÓïÑÔ£¬²¢ÇÒ°´ÕÕ²Ù×÷ϵͳ¶Ô¿ÉÖ´ÐÐÎļþ¸ñʽµÄÒªÇóÁ´½ÓÉú³É¿ÉÖ´ÐгÌÐò¡£
CÔ´³ÌÐòÍ·Îļþ£­£­>Ô¤±àÒë´¦Àí(cpp)£­£­>±àÒë³ÌÐò±¾Éí£­£­>ÓÅ»¯³ÌÐò£­£­>»ã±à³ÌÐò£­£­>Á´½Ó³ÌÐò--> ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ