±ê×¼ C I/O
±ê×¼ C I/O
º¯ÊýÁÐ±í£º
clearerr() Çå³ý´íÎó
fclose() ¹Ø±ÕÒ»¸öÎļþ
feof() Èç¹ûµ½´ïÎļþβ(end-of-file)·µ»Ø"True"(Õæ)
ferror() ¼ì²éÒ»¸öÎļþ´íÎó
fflush() ÊéдÊä³ö»º´æµÄÄÚÈÝ
fgetc() ´ÓÁ÷»ñȡһ¸ö×Ö·û
fgetpos() »ñÈ¡ÎļþλÖÃÖ¸Õë
fgets() ´ÓÒ»¸öÁ÷»ñȡһ´®×Ö·û
fopen() ´ò¿ªÒ»¸öÎļþ
fprintf() ´òÓ¡¸ñʽ»¯µÄÊä³öµ½Ò»¸öÎļþ
fputc() дһ¸ö×Ö·ûµ½Ò»¸öÎļþ
fputs() дһ¸ö×Ö·û´®µ½Ò»¸öÎļþ
fread() ´ÓÒ»¸öÎļþ¶ÁÈ¡
freopen() ÓÃÒ»¸ö²»Í¬µÄÃû³Æ´ò¿ªÒ»¸ö´æÔÚµÄÁ÷
fscanf() ´ÓÒ»¸öÎļþ¶Áȡһ¸ö¸ñʽ»¯µÄÊäÈë
fseek() ÔÚÎļþÖÐÒÆ¶¯µ½Ò»¸öÖ¸¶¨µÄλÖÃ
fsetpos() ÔÚÒ»¸öÎļþÖÐÒÆ¶¯µ½Ò»¸öÖ¸¶¨µÄλÖÃ
ftell() ·µ»Øµ±Ç°ÎļþµÄλÖÃÖ¸Õë
fwrite() дÈëÒ»¸öÎļþ
getc() ´ÓÒ»¸öÎļþ¶Áȡһ¸ö×Ö·û
getchar() ´ÓSTDIN(±ê×¼ÊäÈë)¶Áȡһ¸ö×Ö·û
gets() ´ÓSTDIN(±ê×¼ÊäÈë)¶Áȡһ¸ö×Ö·û´®
perror() ÏÔʾµ±Ç°´íÎóµÄÒ»¸ö×Ö·û´®°æ±¾µ½STDERR(±ê×¼´íÎóÊä³ö)
printf() д¸ñʽ»¯µÄÊä³öµ½STDOUT(±ê×¼Êä³ö)
putc() дһ¸ö×Ö·ûµ½Ò»¸öÁ÷
putchar() дһ¸ö×Ö·ûµ½STDOUT(±ê×¼Êä³ö)
puts() дһ¸ö×Ö·û´®µ½STDOUT(±ê×¼Êä³ö)
remove() Çå³ýÒ»¸öÎļþ
rename() ÖØÃüÃûÒ»¸öÎļþ
rewind() ÒÆ¶¯ÎļþλÖÃÖ¸Õëµ½Ò»¸öÎļþµÄ¿ªÊ¼´¦
scanf() ´ÓSTDIN(±ê×¼ÊäÈë)¶ÁÈ¡¸ñʽ»¯ÊäÈë
setbuf() ÉèÖÃÒ»¸öÖ¸¶¨Á÷µÄ»º³åÇø
setvbuf() ÉèÖÃÒ»¸öÖ¸¶¨Á÷µÄ»º³åÇøºÍ´óС
sprintf() д¸ñʽ»¯µÄÊä³öµ½»º³åÇø
sscanf() ´ÓÒ»¸ö»º³åÇø¶ÁÈ¡¸ñʽ»¯µÄÊäÈë
tmpfile() ·µ»ØÒ»¸öµ½Ò»¸öÁÙʱÎļþµÄÖ¸Õë
tmpnam() ·µ»ØÒ»¸ö¶ÀÌØµÄÎļþÃû
ungetc() °ÑÒ»¸ö×Ö·û·Å»ØÒ»¸öÁ÷
vprintf, vfprintf, vsprintf дÓòÎÊýÁбí¸ñʽ»¯Êä³ö
/////////////////////////////////////////////////////////////////////////////////////////
clearerr
Óï·¨:
#include <stdio.h>
void clearerr( FILE *stream );
clearerrº¯ÊýÖØÖôíÎó±ê¼ÇºÍ¸ø³öµÄÁ÷µÄEOFÖ¸Õë. µ±·¢Éú´íÎóʱ,Äã¿ÉÒÔʹÓÃperror()ÅжÏʵ¼ÊÉÏ·¢ÉúÁ˺ÎÖÖ´íÎó.
ferror
Óï·¨:
#include <stdio.h>
int ferror( FILE *stream );
ferror()º¯Êý¼ì²éstream(Á÷)ÖеĴíÎó, Èç¹ûû·¢Éú´íÎó·µ»Ø0,·ñÔò·µ»Ø·ÇÁã. Èç¹û·¢Éú´íÎó, ʹÓÃperror()¼ì²â·¢Éúʲô´íÎó.
perror
Óï·¨: #include <stdio.h>
void perror( const
Ïà¹ØÎĵµ£º
Ê×ÏÈÈ·±£ÏµÍ³ÒѾ°²×°ÁËgcc/g++
1> Anjuta
´ò¿ªÖÕ¶Ë:
ÃüÁî:sudo apt-get install anjuta
£¨²»Äܰ²×°µÄÐèÒªÌí¼Ó°²×°Ô´
Ìí¼ÓÔ´£ºµã»÷Ö÷²Ëµ¥Éϵēϵͳ”¡·“ϵͳ¹ÜÀ픡·“Èí¼þÔ´”£¬ÊäÈëÃÜÂëºó£¬ÔÚ³öÏֵĶԻ°¿òÖе㓵ÚÈý·½Èí¼þ”£¬
“deb http://anjuta.org.sixxs. ......
ÒÔ i2c-mpc.c Çý¶¯Ä£¿éΪÀý
fsl_i2c_init -> of_register_platform_driver -> of_register_driver -> driver_register -> bus_add_driver -> driver_attach
-> bus_for_each_dev -> __driver_attach -> driver_probe_device -> really_probe -> drv->probe(dev); ......
±àÒëµÄ¸ÅÄ±àÒë³ÌÐò¶ÁȡԴ³ÌÐò£¨×Ö·ûÁ÷£©£¬¶ÔÖ®½øÐдʷ¨ºÍÓï·¨µÄ·ÖÎö£¬½«¸ß¼¶ÓïÑÔÖ¸Áîת»»Îª¹¦ÄܵÈЧµÄ»ã±à´úÂ룬ÔÙÓÉ»ã±à³ÌÐòת»»Îª»úÆ÷ÓïÑÔ£¬²¢ÇÒ°´ÕÕ²Ù×÷ϵͳ¶Ô¿ÉÖ´ÐÐÎļþ¸ñʽµÄÒªÇóÁ´½ÓÉú³É¿ÉÖ´ÐгÌÐò¡£
±àÒëµÄÍêÕû¹ý³Ì£ºCÔ´³ÌÐò££>Ô¤±àÒë´¦Àí(.c)££>±àÒë¡¢ÓÅ»¯³ÌÐò£¨.s¡¢.asm£©££>»ã± ......
±¾ÎĽöÏÞÓÚC£¬Ö÷Òª×Ô¼ºÀÏÍü¡£±ðµÄ·Ï»°ÉÙ˵¡£
1.Basic
Ê×ÏÈ¿¼ÂǺ¯ÊýÔÚº¯ÊýÌåÄڵ͍Ò壬ÈçÏ£º
#include <stdio.h>
#include <stdlib.h>
int main()
{
int add(int,int);
int def(int, int);
printf("%d\n", add(1,3));
printf("%d\n", def(3,1));
  ......
#include <stdio.h>
#include <string.h>
#include <math.h>
#define BASE 10
int intlen(long n);
int main()
{
int i, j, num, sz;
i = j = num = sz = 0;
if (!scanf("%d", &num) || num <= 0) {
printf("invalid input\n");
retu ......