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);¡£
¸ñʽ»¯ÊäÈëϵ
Ïà¹ØÎĵµ£º
extern cµÄ×÷Óá¾×ª¡¿
2009-12-18 13:10
1.ÒýÑÔ
C++ÓïÑԵĴ´½¨³õÖÔÊÇ“a better C”£¬µ«ÊÇÕâ²¢²»Òâζ×ÅC++ÖÐÀàËÆCÓïÑÔµÄÈ«¾Ö±äÁ¿ºÍº¯ÊýËù²ÉÓõıàÒëºÍÁ¬½Ó·½Ê½ÓëCÓïÑÔÍêÈ«Ïàͬ¡£×÷ΪһÖÖÓûÓëC¼æÈݵÄÓïÑÔ£¬C++±£ÁôÁËÒ»²¿·Ö¹ý³Ì ʽÓïÑÔµÄÌØµã£¨±»ÊÀÈ˳ÆÎª“²»³¹µ×µØÃæÏò¶ÔÏ󔣩£¬Òò¶øËü¿ÉÒÔ¶¨Òå²»ÊôÓ ......
¹¹½¨»ù±¾µÄLinux C ±à³Ì»·¾³ ÊÕ²Ø
±¾ÎÄ»ùÓÚdebian-40r0(ÄÚºË2.6.18)½éÉÜÒ»ÏÂÈçºÎÔÚÒ»¸ö±ê׼ϵͳÖй¹½¨Linux CµÄ»ù±¾±à³Ì¿ª·¢»·¾³¡£
Ò»¸öÍêÕûµÄ¿ª·¢»·¾³Ö÷Òª°üÀ¨Ëĸö²¿·Ö£º±ê×¼C¿â¡¢Í·Îļþ¡¢¹¤¾ßÁ´¡¢±à¼Æ÷¡¢°ïÖúÎĵµ£¬ÏÂÃæÒÀ´Î½éÉÜ¡£
±ê×¼C¿âglibc
glibcÊÇgnu·¢²¼µÄlibc¿â£¬¼´cÔËÐп⡣glibcÊÇlinuxϵͳÖÐÄÚºËÖ ......
/*
*Ëã·¨ÔÀí£º½«Í¼G Öеı߰´È¨Êý´ÓСµ½´óÖðÌõ¿¼²ì,
* °´²»¹¹³ÉȦµÄÔÔò¼ÓÈëµ½TÖÐ(ÈôÓÐÑ¡Ôñʱ, ²»Í¬µÄÑ¡
* Ôñ¿ÉÄܻᵼÖÂ×îºóÉú³ÉÊ÷µÄȨÊý²»Í¬), Ö±µ½
* q(T) = p(G)-1Ϊֹ, ¼´ T µÄ±ßÊý = G µÄ¶¥µã1 Ϊֹ.
*Ëã·¨ÖÐÎÞȦÐÔµÄÅж¨±È½ÏÂé·³£¬Ó¦¸ÃÓñê¼Ç·¨×îºÃ£¬
*¶Ô¸÷¸ö·ÖÖ§µÄ¶¥µã±êºÅ¡£
*ÎÒû×Ðϸ¿ ......
Õ⼸ÌìÎÒ°²×°ÁËÒ»¸öLinuxϵͳ£¬ÏëÔÚÀïÃæÑ§Ò»ÏÂCÓïÑԵıàд£¬·¢ÏÖÔÚÀïÃæÔËÐÐÓÐÒ»¸öºÃÆæ¹ÖµÄÏÖÏó£ºÈçÏÂÃæ
#include<stdio.h>
void mian(){
printf("hello world!");
}
Êä³öûÓнá¹û£¡¸ãµÄÎÒ¿´Á˰ëÌ죬³ÌÐòûÓдíÎó°¡£¡ÔõôÕâÑù£¡ºóÀ´ÎҰѳÌÐò¸ÄΪ
#include<stdio.h>
void mian(){
printf("hello ......
Turbo C 2.0 º¯ÊýÖÐÎÄ˵Ã÷´óÈ«
·ÖÀຯÊý,ËùÔÚº¯Êý¿âΪctype.h
int isalpha(int ch) ÈôchÊÇ×Öĸ('A'-'Z','a'-'z')·µ»Ø·Ç0Öµ,·ñÔò·µ»Ø0
int isalnum(int ch) ÈôchÊÇ×Öĸ('A'-'Z','a'-'z')»òÊý×Ö('0'-'9'),·µ»Ø·Ç0Öµ,·ñÔò·µ»Ø0
int isascii(int ch) ÈôchÊÇ×Ö·û(ASCIIÂëÖеÄ0-127)·µ»Ø·Ç0Öµ,·ñÔò·µ»Ø0
int iscntrl(int ......