CÓïÑÔÎļþÏà¹Ø²Ù×÷
CÓïÑÔÎļþ²Ù×÷½Ó´¥ºÜ¾ÃÁË£¬Ò»Ö±Ã»ÓÐ×ܽáÏà¹ØÄÚÈÝ£¬½ñÌìÓõ½Á˾ÍÈ¥ÕÒÁËÕÒÏà¹ØÄÚÈÝ¡£
ÔÚANSI CÖУ¬¶ÔÎļþµÄ²Ù×÷·ÖΪÁ½ÖÖ·½Ê½£¬¼´Á÷ʽÎļþ²Ù×÷ºÍI/OÎļþ²Ù×÷
typedef struct {
int level; /* fill/empty level of buffer */
unsigned flags; /* File status flags */
char fd; /* File descriptor */
unsigned char hold; /* Ungetc char if no buffer */
int bsize; /* Buffer size */
unsigned char _FAR *buffer; /* Data transfer buffer */
unsigned char _FAR *curp; /* Current active pointer */
unsigned istemp; /* Temporary file indicator */
short token; /* Used for validity checking */
} FILE; /* This is the FILE object */
VCÖÐFILEµÄ¶¨ÒåΪ
struct _iobuf {
char *_ptr; //ÎļþÊäÈëµÄÏÂÒ»¸öλÖÃ
int _cnt; //µ±Ç°»º³åÇøµÄÏà¶ÔλÖÃ
char *_base; //Ö¸»ù´¡Î»ÖÃ(¼´ÊÇÎļþµÄÆäʼλÖÃ)
int _flag; //Îļþ±êÖ¾
int _file; //ÎļþµÄÓÐЧÐÔÑéÖ¤
int _charbuf; //¼ì²é»º³åÇø×´¿ö,Èç¹ûÎÞ»º³åÇøÔò²»¶ÁÈ¡
int _bufsiz; //ÎļþµÄ´óС
char *_tmpfname; //ÁÙʱÎļþÃû
};
typedef struct _iobuf FILE;
FILEÕâ¸ö½á¹¹°üº¬ÁËÎļþ²Ù×÷µÄ»ù±¾ÊôÐÔ£¬¶ÔÎļþµÄ²Ù×÷¶¼ÒªÍ¨¹ýÕâ¸ö½á¹¹µÄÖ¸ÕëÀ´½øÐС£
Îļþ´ò¿ªº¯Êýfopen
¡¡¡¡fopenº¯ÊýÓÃÀ´´ò¿ªÒ»¸öÎļþ£¬Æäµ÷ÓõÄÒ»°ãÐÎʽΪ£º
ÎļþÖ¸ÕëÃû=fopen(ÎļþÃû£¬Ê¹ÓÃÎļþ·½Ê½) ÆäÖУ¬“ÎļþÖ¸ÕëÃû”±ØÐëÊDZ»ËµÃ÷ΪFILE ÀàÐ͵ÄÖ¸Õë±äÁ¿£¬“ÎļþÃû”ÊDZ»´ò¿ªÎļþµÄÎļþÃû¡£
“ʹÓÃÎļþ·½Ê½”ÊÇÖ¸ÎļþµÄÀàÐͺͲÙ×÷ÒªÇ󡣓ÎļþÃû”ÊÇ×Ö·û´®³£Á¿»ò×Ö·û´®Êý×é¡£ÀýÈ磺
FILE *fp£»
fp=("file a","r");
ÆäÒâÒåÊÇÔÚµ±Ç°Ä¿Â¼Ï´ò¿ªÎļþfile a£¬ Ö»ÔÊÐí½øÐГ¶Á”²Ù×÷£¬²¢Ê¹fpÖ¸Ïò¸ÃÎļþ¡£
ÓÖÈ磺
FILE *fphzk
fphzk=("c:\hzk16',"rb")
ÆäÒâÒåÊÇ´ò¿ªCÇý¶¯Æ÷´ÅÅ̵ĸùĿ¼ÏµÄÎļþhzk16£¬ ÕâÊÇÒ»¸ö¶þ½øÖÆÎļþ£¬Ö»ÔÊÐí°´¶þ½øÖÆ·½Ê½½øÐжÁ²Ù×÷¡£Á½¸ö·´Ð±Ïß“\ ”ÖеĵÚÒ»¸ö±íʾתÒå×Ö·û£¬µÚ¶þ¸ö±íʾ¸ùĿ¼¡£Ê¹ÓÃÎļþµÄ·½Ê½¹²ÓÐ12ÖÖ£¬ÏÂÃæ¸ø³öÁËËüÃǵķûºÅºÍÒâÒå¡£
ÎļþʹÓ÷½Ê½ ¡¡¡¡¡¡¡¡¡¡¡¡¡¡Òâ Òå
“rt”¡¡¡¡¡¡¡¡¡¡¡¡Ö»¶Á´ò¿ªÒ»¸öÎı¾Îļþ£¬Ö»ÔÊÐí¶ÁÊý¾Ý
“wt&r
Ïà¹ØÎĵµ£º
11.1 ¶¨ÒåÒ»¸ö½á¹¹µÄÒ»°ãÐÎʽ
ÔÚʵ¼ÊÎÊÌâÖУ¬Ò»×éÊý¾ÝÍùÍù¾ßÓв»Í¬µÄÊý¾ÝÀàÐÍ¡£ÀýÈ磬ÔÚѧÉúµÇ¼Ç±íÖУ¬ÐÕÃûӦΪ×Ö·ûÐÍ£»Ñ§ºÅ¿ÉΪÕûÐÍ»ò×Ö·ûÐÍ£»ÄêÁäӦΪÕûÐÍ£»ÐÔ±ðӦΪ×Ö·ûÐÍ£»³É¼¨¿ÉΪÕûÐÍ»òʵÐÍ¡£ ÏÔÈ»²»ÄÜÓÃÒ»¸öÊý×éÀ´´æ·ÅÕâÒ»×éÊý¾Ý¡£ÒòΪÊý×éÖи÷ÔªËØµÄÀàÐͺͳ¤¶È¶¼±ØÐëÒ»Ö£¬ÒÔ±ãÓÚ±àÒëϵͳ´¦Àí¡ ......
ÎÒÊÇÒ»¸ö¼ÆËã»úרҵµÄ±¾¿ÆÉú£¬ÏÖÔÚÎÒÃǸոÕѧÍêÁËÊý¾Ý½á¹¹¡£¾Ý˵Êý¾Ý½á¹¹¶ÔÓÚÎÒÃDZà³ÌºÜÖØÒª£¬¿ÉÊÇÎÒÏÖÔÚ²»ÖªÔõô°ÑÊý¾Ý½á¹¹ºÍCÓïÑÔ½áºÏÆðÀ´£¬ÒÔ±ã¸üºÃµÄ½øÐÐcÓïÑÔ±à³Ì¡£ÓÐÄÄλ¸ßÊÖÖ¸µãÒ»¶þ£¬ÔÚÏ¸м¤²»¾¡£¡
......
¿ìËÙÅÅÐòµÄºËÐÄÔÚÓÚ·ÖÖÎ.
·ÖÖÎËã·¨:
1. È϶¨Ö»ÓÐÒ»¸öÔªËØ»òûÓÐÔªËØµÄÊý×éÊÇÓÐÐòµÄ.
2. ½«Êý×é°´ÕÕÒ»¸ö·Ö½çÖµ·ÖΪ×óÓÒÁ½²¿·Ö. ×óÃæËùÓÐÔªËØÖµ±È·Ö½çֵС, ÓÒÃæËùÓÐÔªËØÖµ±È·Ö½çÖµ´ó»òµÈÓÚ.
3. ½«×óÓÒÁ½²¿·Ö·Ö±ðÔÙ·ÖÖÎ, Ö±µ½Òª·ÖÖ§µÄ²¿·ÖÖ»ÓÐÒ»¸öÔªËØ»òûÓÐÔªËØ, ÄÇôÕû¸öÊý×é¾ÍÊÇÓÐÐòµÄÁË.
×÷Õß: selfimpr
²©¿Í: http ......
Ò»¡¢´ÓCÓëC++±àÒëÁ¬½Ó·½Ê½ÉîÈëÀí½âextern "C"
<1>.CºÍC++¶Ôº¯ÊýµÄ´¦Àí·½Ê½ÊDz»Í¬µÄ.±»extern "C"ÐÞÊεıäÁ¿ºÍº¯ÊýÊǰ´ÕÕCÓïÑÔ·½Ê½±àÒëºÍÁ¬½ÓµÄ.extern "C"ÓÃÓÚʵÏÖC++ÓëC¼°ÆäËüÓïÑԵĻìºÏ±à³Ì¡£
<2>.δ¼Óextern “C”ÉùÃ÷ʱµÄ±àÒ뷽ʽ
Ê×ÏÈ¿´¿´C++ÖжÔÀàËÆCµÄº¯ÊýÊÇÔõÑù±àÒëµÄ¡£
×÷ΪһÖÖÃæÏò ......
http://www.kuqin.com/language/20090314/39862.html
Ö¸ÕëÊÇÒ»¸öÌØÊâµÄ±äÁ¿£¬ËüÀïÃæ´æ´¢µÄÊýÖµ±»½âÊͳÉΪÄÚ´æÀïµÄÒ»¸öµØÖ·¡£ Òª¸ãÇåÒ»¸öÖ¸ÕëÐèÒª¸ãÇåÖ¸ÕëµÄËÄ·½ÃæµÄÄÚÈÝ£ºÖ¸ÕëµÄÀàÐÍ£¬Ö¸ÕëËùÖ¸ÏòµÄ ÀàÐÍ£¬Ö¸ÕëµÄÖµ»òÕß½ÐÖ¸ÕëËùÖ¸ÏòµÄÄÚ´æÇø£¬»¹ÓÐÖ¸Õë±¾ÉíËùÕ¼¾ÝµÄÄÚ´æÇø¡£ÈÃÎÒÃÇ·Ö±ð˵Ã÷¡£
¡¡¡¡ ÏÈÉùÃ÷¼¸¸öÖ¸Õë·Å×Å×öÀý× ......