C ÓïÑÔÖÐÇå¿ÕÊäÈ뻺³åÇø
CÓïÑÔÖÐÓм¸¸ö»ù±¾ÊäÈ뺯Êý£º
//»ñÈ¡×Ö·ûϵÁÐ
int fgetc(FILE *stream);
int getc(FILE *stream);
int getchar(void);
//»ñÈ¡ÐÐϵÁÐ
char *fgets(char * restrict s, int n, FILE * restrict stream);
char *gets(char *s);//¿ÉÄܵ¼ÖÂÒç³ö£¬ÓÃfgets´úÌæÖ®¡£
//¸ñʽ»¯ÊäÈëϵÁÐ
int fscanf(FILE * restrict stream, const char * restrict format, …);
int scanf(const char * restrict format, …);
int sscanf(const char * restrict str, const char * restrict format, …);
ÕâÀï½öÌÖÂÛÊäÈ뺯ÊýÔÚ±ê×¼ÊäÈ루stdin£©Çé¿öϵÄʹÓá£×ݹÛÉÏÊö¸÷ÊäÈ뺯Êý£¬»ñÈ¡×Ö·ûϵÁеĵÄǰÈý¸öº¯Êýfgetc¡¢getc¡¢getchar¡£ÒÔgetcharΪÀý£¬½«ÔÚstdin»º³åÇøÎª¿Õʱ£¬µÈ´ýÊäÈ룬ֱµ½»Ø³µ»»ÐÐʱº¯Êý·µ»Ø¡£Èôstdin»º³åÇø²»Îª¿Õ£¬getcharÖ±½Ó·µ»Ø¡£getchar·µ»ØÊ±´Ó»º³åÇøÖÐÈ¡³öÒ»¸ö×Ö·û£¬²¢½«Æäת»»Îªint£¬·µ»Ø´ËintÖµ¡£
MINGW 4.4.3ÖÐFILE½á¹¹ÌåÔ´Â룺
typedef struct _iobuf
{
char* _ptr;//Ö¸Ïòµ±Ç°»º³åÇø¶ÁȡλÖÃ
int _cnt;//»º³åÇøÖÐÊ£ÓàÊý¾Ý³¤¶È
char* _base;
int _flag;
int _file;
int _charbuf;
int _bufsiz;
char* _tmpfname;
} FILE;
¸÷±àÒëÆ÷ʵÏÖ¿ÉÄܲ»Ò»Ñù£¬ÕâÀï»ñÈ¡×Ö·ûϵÁк¯ÊýÖ»Óõ½_ptrºÍ_cnt¡£MINGW 4.4.3ÖÐgetchar()ʵÏÖ£º
__CRT_INLINE int __cdecl __MINGW_NOTHROW getchar (void)
{
return (--stdin->_cnt >= 0)
? (int) (unsigned char) *stdin->_ptr++
: _filbuf (stdin);
}
ÆäÖÐstdinΪFILEÖ¸ÕëÀàÐÍ£¬ÔÚMINGW 4.4.3ÖУ¬getc()ºÍgetchar()ʵÏÖΪÄÚÁªº¯Êý£¬fgetc()ʵÏÖΪº¯Êý¡£Ë³±ã˵һ¾ä£¬C99±ê×¼ÖÐÒѾ¼ÓÈë¶ÔÄÚÁªº¯ÊýµÄÖ§³ÖÁË¡£
»ñÈ¡ÐÐϵÁеÄfgetsºÍgets£¬ÆäÖÐÓÉÓÚgetsÎÞ·¨È·¶¨»º³åÇø´óС£¬³£µ¼ÖÂÒç³öÇé¿ö£¬ÕâÀï²»ÍÆ¼öÒ²²»ÌÖÂÛgetsº¯Êý¡£¶ÔÓÚfgetsº¯Êý£¬Ã¿´ÎÇÃÈë»Ø³µ£¬fgets¼´·µ»Ø¡£fgets³É¹¦·µ»ØÊ±£¬½«ÊäÈ뻺³åÇøÖеÄÊý¾ÝÁ¬»»Ðзû’ ’Ò»Æð¿½±´µ½µÚÒ»¸ö²ÎÊýËùÖ¸ÏòµÄ¿Õ¼äÖС£ÈôÊäÈëÊý¾Ý³¬¹ý»º³åÇø³¤¶È£¬fgets»á½ØÈ¡Êý¾Ýµ½Ç°n-1£¨nΪfgetsµÚ¶þ¸ö²ÎÊý£¬ÎªµÚÒ»¸ö²ÎÊýÖ¸Ïò¿Õ¼äµÄ³¤¶È£©£¬È»ºóÔÚĩβ¼ÓÈë’ ’¡£Òò´ËfgetsÊǰ²È«µÄ¡£Í¨³£ÓÃfgets(buf, BUF_LEN, stdin);´úÌægets(buf);¡£
¸ñʽ»¯ÊäÈëϵ
Ïà¹ØÎĵµ£º
×î½üÔÚ¿´¡¶c³ÌÐòÉè¼ÆÓïÑÔ¡·£¬¾ÍÊÇÄDZ¾±»ÓþΪCÓïÑÔÊ¥¾µÄÊé¼®¡£¼¸Ìì¿´ÁËÒ»Õ£¬¸Ð´¥ºÜ´ó£¬¿ªÆª¾ÍÉæ¼°µ½ºÜ¶àʵÓóÌÐò£¬²»ÏñÌ·ºÆÇ¿ÄÇÑùÈÃÈËÉîÏÝÓ﷨ϸ½ÚÖ®ÖУ¬¶øÇÒѧÍêÌ·µÄÊé¸Ð¾õʲô¶¼²»ÄÜ×ö¡£ºÜ¶àÎÊÌâÌ·¶¼»Ø±ÜÁË¡£Ëùνרҵ¿´¿´c³ÌÐòÉè¼ÆÓïÑԵĴúÂëµÄ·ç¸ñ¾ÍÄܸÐÊܵ½£¬Ò»ÖÖ¾«Ðĵñ×ÁµÄÒÕÊõÆ·¡£µÚÒ»ÕÂÓÐ ......
extern cµÄ×÷Óá¾×ª¡¿
2009-12-18 13:10
1.ÒýÑÔ
C++ÓïÑԵĴ´½¨³õÖÔÊÇ“a better C”£¬µ«ÊÇÕâ²¢²»Òâζ×ÅC++ÖÐÀàËÆCÓïÑÔµÄÈ«¾Ö±äÁ¿ºÍº¯ÊýËù²ÉÓõıàÒëºÍÁ¬½Ó·½Ê½ÓëCÓïÑÔÍêÈ«Ïàͬ¡£×÷ΪһÖÖÓûÓëC¼æÈݵÄÓïÑÔ£¬C++±£ÁôÁËÒ»²¿·Ö¹ý³Ì ʽÓïÑÔµÄÌØµã£¨±»ÊÀÈ˳ÆÎª“²»³¹µ×µØÃæÏò¶ÔÏ󔣩£¬Òò¶øËü¿ÉÒÔ¶¨Òå²»ÊôÓ ......
CºÍC++»¥Ïàµ÷Óú¯Êýʱ£¬Ê¹ÓÃextern "C"¡£
ÔÒò£º
C²»Ö§³Öº¯ÊýÖØÔØ£¬¶øC++Ö§³Öº¯ÊýÖØÔØ¡£º¯Êý±»C++±àÒëºó»áÃû×ÖÓëCÓïÑÔ²»Í¬¡£¼ÙÉèijº¯ÊýÔÐÍΪfoo(ing x, int y)£¬±»C++±àÒëºóÃû×ÖΪ_foo_int_int£¬¶øC±àÒëÆ÷±àÒëºóÃû×ÖΪ_foo¡£ ......
ÎÊÌ⣺ÔÚ´æ´¢¹ý³ÌÖУ¬ÓÐʱ»áÓöµ½±È½Ï±ä̬µÄ¶«Î÷£¬ÈçÒ»¸ö´æ´¢¹ý³ÌÖÐÓÐoutput·µ»ØÖµ£¬ÓÐreturn·µ»ØÖµ£¬»¹ÓвéѯµÄ·µ»ØÖµTABLE£¬Óöµ½ÕâÑùµÄ´æ´¢¹ý³ÌÕæÊÇÓôÃÆ£¬Ò»´ÎÐÔ°ÑËùÓеķµ»ØÖµÈ¡³öÀ´»¹ÕæµÄÓеãÂé·³¡£
1¡¢ Ê×ÏÈÀ´¿´Õâ¸ö´æ´¢¹ý³Ì°É
CREATE PROCEDURE ParaTest
@paraout varchar(20) ......
1.ÇóÏÂÃæº¯ÊýµÄ·µ»ØÖµ£¨Î¢Èí£©
int func(x)
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
}
......