»áÔ±£º ÃÜÂ룺 ¡¡Ãâ·Ñ×¢²á | Íü¼ÇÃÜÂë | »áÔ±µÇ¼ ÍøÒ³¹¦ÄÜ£º ¼ÓÈëÊÕ²Ø ÉèΪÊ×Ò³ ÍøÕ¾ËÑË÷  
¼¼ÊõÎĵµ > VCÎĵµ > ÆäËûÎĵµ
C++µÄiostream±ê×¼¿â½éÉÜ(1)
·¢±íÈÕÆÚ£º2005-04-15 23:15:42×÷Õߣº¹ ³ö´¦£º  

¡¡¡¡ÎÒÃÇ´ÓÒ»¿ªÊ¼¾ÍÒ»Ö±ÔÚÀûÓÃC++µÄÊäÈëÊä³öÔÚ×öן÷ÖÖÁ·Ï°£¬ÊäÈëÊä³öÊÇÓÉiostream¿âÌṩµÄ£¬ËùÒÔÌÖÂ۴˱ê×¼¿âÊÇÓбØÒªµÄ£¬ËüÓëCÓïÑÔµÄstdio¿â²»Í¬£¬Ëü´ÓÒ»¿ªÊ¼¾ÍÊÇÓöàÖؼ̳ÐÓëÐéÄâ¼Ì³ÐʵÏÖµÄÃæÏò¶ÔÏóµÄ²ã´Î½á¹¹£¬×÷Ϊһ¸öc++µÄ±ê×¼¿â×é¼þÌṩ¸ø³ÌÐòԱʹÓá£

¡¡¡¡iostreamΪÄÚÖÃÀàÐÍÀàÐͶÔÏóÌṩÁËÊäÈëÊä³öÖ§³Ö£¬Í¬Ê±Ò²Ö§³ÖÎļþµÄÊäÈëÊä³ö£¬ÀàµÄÉè¼ÆÕß¿ÉÒÔͨ¹ý¶Ôiostream¿âµÄÀ©Õ¹£¬À´Ö§³Ö×Ô¶¨ÒåÀàÐ͵ÄÊäÈëÊä³ö²Ù×÷¡£

¡¡¡¡ÎªÊ²Ã´ËµÒªÀ©Õ¹²ÅÄÜÌṩ֧³ÖÄØ£¿ÎÒÃÇÀ´Ò»¸öʾÀý¡£

#include <stdio.h> 
#include <iostream
using namespace std;     
 
class Test 

    public
        Test(int a=0,int b=0) 
        { 
            Test::a=a; 
            Test::b=b; 
        } 
    int a; 
    int b; 
}; 
int main() 

    Test t(100,50); 
    printf("%???",t);//²»Ã÷È·µÄÊä³ö¸ñʽ 
    scanf("%???",t);//²»Ã÷È·µÄÊäÈë¸ñʽ 
    cout<<t<<endl;//ͬÑù²»¹»Ã÷È· 
    cin>>t;//ͬÑù²»¹»Ã÷È· 
    system("pause"); 
}

¡¡¡¡ÓÉÓÚ×Ô¶¨ÒåÀàµÄÌØÊâÐÔ£¬ÔÚÉÏÃæµÄ´úÂëÖУ¬ÎÞÂÛÄãʹÓÃc·ç¸ñµÄÊäÈëÊä³ö£¬»òÕßÊÇc++µÄÊäÈëÊä³ö¶¼²»ÊDz»Ã÷È·µÄÒ»¸ö±íʾ£¬ÓÉÓÚcÓïÑÔûÓÐÔËËã·ûÖØÔØ»úÖÆ£¬µ¼ÖÂstdio¿âµÄ²»¿ÉÀ©³äÐÔ£¬ÈÃÎÒÃÇÎÞ·¨ÈÃprintf()ºÍscanf()Ö§³Ö¶Ô×Ô¶¨ÒåÀà¶ÔÏóµÄÀ©³äʶ±ð£¬¶øc++ÊÇ¿ÉÒÔͨ¹ýÔËËã·ûÖØÔØ»úÖÆÀ©³äiostream¿âµÄ£¬Ê¹ÏµÍ³ÄÜÄܹ»Ê¶±ð×Ô¶¨ÒåÀàÐÍ£¬´Ó¶øÈÃÊäÈëÊä³öÃ÷È·µÄÖªµÀËûÃǸøÉʲô£¬¸ñʽÊÇʲô¡£

¡¡¡¡ÔÚÉÏÀýÖÐÎÒÃÇÖ®ËùÒÔÓÃprintfÓëcout½øÐжԱÈÄ¿µÄÊÇΪÁ˸æËß´ó¼Ò£¬CÓëC++´¦ÀíÊäÈëÊä³öµÄ¸ù±¾²»Í¬£¬ÎÒÃÇ´ÓcÔ¶µÄÊäÈëÊä³ö¿ÉÒÔºÜÃ÷ÏÔ¿´³öÊǺ¯Êýµ÷Ó÷½Ê½£¬¶øc++µÄÔòÊǶÔÏóģʽ£¬coutºÍcinÊÇostreamÀàºÍistreamÀàµÄ¶ÔÏó¡£

¡¡¡¡C++ÖеÄiostream¿âÖ÷Òª°üº¬ÏÂͼËùʾµÄ¼¸¸öÍ·Îļþ:

¡¡¡¡ÎÒÃÇËùÊìϤµÄÊäÈëÊä³ö²Ù×÷·Ö±ðÊÇÓÉistream(ÊäÈëÁ÷)ºÍostream(Êä³öÁ÷)ÕâÁ½¸öÀàÌṩµÄ£¬ÎªÁËÔÊÐíË«ÏòµÄÊäÈ룯Êä³ö£¬ÓÉistreamºÍostreamÅÉÉú³öÁËiostreamÀà¡£

¡¡¡¡ÀàµÄ¼Ì³Ð¹Øϵ¼ûÏÂͼ£º

 

iostream¿â¶¨ÒåÁËÒÔÏÂÈý¸ö±ê×¼Á÷¶ÔÏó£º

¡¡¡¡£±.cin£¬±íʾ±ê×¼ÊäÈë(standard input)µÄistreamÀà¶ÔÏó¡£cinʹÎÒÃÇ¿ÉÒÔ´ÓÉ豸¶ÁÈçÊý¾Ý¡£
¡¡¡¡£².cout£¬±íʾ±ê×¼Êä³ö(standard output)µÄostreamÀà¶ÔÏó¡£coutʹÎÒÃÇ¿ÉÒÔÏòÉ豸Êä³ö»òÕßдÊý¾Ý¡£
¡¡¡¡£³.cerr£¬±íʾ±ê×¼´íÎó(standard error)µÄosttreamÀà¶ÔÏó¡£cerrÊǵ¼³ö³ÌÐò´íÎóÏûÏ¢µÄµØ·½£¬ËüÖ»ÄÜÔÊÐíÏòÆÁÄ»É豸дÊý¾Ý¡£

¡¡¡¡Êä³öÖ÷ÒªÓÉÖØÔصÄ×óÒƲÙ×÷·û£¨<<£©À´Íê³É£¬ÊäÈëÖ÷ÒªÓÉÖØÔصÄÓÒÒƲÙ×÷·û(>>)Íê³É¡£

¡¡¡¡>>a±íʾ½«Êý¾Ý·ÅÈëa¶ÔÏóÖС£
¡¡¡¡<<a±íʾ½«a¶ÔÏóÖд洢µÄÊý¾ÝÄóö¡£

¡¡¡¡ÕâЩ±ê×¼µÄÁ÷¶ÔÏó¶¼ÓÐĬÈϵÄËù¶ÔÓ¦µÄÉ豸£¬¼ûÏÂ±í£º

¡¡¡¡Í¼ÖеÄÒâ˼±íÃ÷cin¶ÔÏóµÄĬÈÏÊäÈëÉ豸ÊǼüÅÌ£¬cout¶ÔÏóµÄĬÈÏÊä³öÉ豸ÊÇÏÔʾÆ÷ÆÁÄ»¡£

¡¡¡¡ÄÇôԭÀíÉÏ£Ã++ÓÐÊÇÈçºÎÀûÓÃcin£¯cout¶ÔÏóÓë×óÒƺÍÓÒÒÆÔËËã·ûÖØÔØÀ´ÊµÏÖÊäÈëÊä³öµÄÄØ£¿

¡¡¡¡ÏÂÃæÎÒÃÇÒÔÊä³öΪÀý£¬ËµÃ÷ÆäʵÏÖÔ­Àí£º

¡¡¡¡coutÊÇostreamÀàµÄ¶ÔÏó£¬ÒòΪËüËùÖ¸ÏòµÄÊDZê×¼É豸£¨ÏÔʾÆ÷ÆÁÄ»£©£¬ËùÒÔËüÔÚiostreamÍ·ÎļþÖÐ×÷Ϊȫ¾Ö¶ÔÏó½øÐж¨Òå¡£

¡¡¡¡ostream cout(stdout);//ÆäĬÈÏÖ¸ÏòµÄCÖеıê×¼É豸Ãû£¬×÷ΪÆä¹¹Ô캯ÊýµÄ²ÎÊýʹÓá£

¡¡¡¡ÔÚiostream.hÍ·ÎļþÖУ¬ostreamÀà¶ÔӦÿ¸ö»ù±¾Êý¾ÝÀàÐͶ¼ÓÐÆäÓÑÔªº¯Êý¶Ô×óÒƲÙ×÷·û½øÐÐÁËÓÑÔªº¯ÊýµÄÖØÔØ¡£
¡¡¡¡ostream& operator<<(ostream &temp,int source);
¡¡¡¡ostream& operator<<(ostream &temp,char *ps);
¡¡¡¡¡£¡£¡£¡£µÈµÈ

¡¡¡¡Ò»¾äÊä³öÓï¾ä£ºcout<<"www.cndev-lab.com"£»£¬ÊÂʵÉϵ÷ÓõľÍÊÇostream& operator<<(ostream &temp,char *ps);Õâ¸öÔËËã·ûÖØÔغ¯Êý£¬ÓÉÓÚ·µ»ØµÄÊÇÁ÷¶ÔÏóµÄÒýÓã¬ÒýÓÿÉÒÔ×÷Ϊ×óֵʹÓã¬ËùÒÔµ±³ÌÐòÖÐÓÐÀàËÆcout<<"www.cndev-lab.com"<<"ÖйúÈí¼þ¿ª·¢ÊµÑéÊÒ";ÕâÑùµÄÓï¾ä³öÏÖµÄʱºò£¬¾ÍÄܹ»¹¹³ÉÁ¬ÐøÊä³ö¡£

¡¡¡¡ÓÉÓÚiostream¿â²»¹âÖ§³Ö¶ÔÏóµÄÊäÈëÊä³ö£¬Í¬Ê±Ò²Ö§³ÖÎļþÁ÷µÄÊäÈëÊä³ö£¬ËùÒÔÔÚÏêϸ½²½â×óÒÆÓëÓÒÒÆÔËËã·ûÖØÔØֻǰ£¬ÎÒÃÇÓбØÒªÏȶÔÎļþµÄÊäÈëÊä³öÒÔ¼°ÊäÈëÊä³öµÄ¿ØÖÆ·ûÓÐËùÁ˽⡣

¡¡¡¡ºÍÎļþÓйØϵµÄÊäÈëÊä³öÀàÖ÷ÒªÔÚfstream.hÕâ¸öÍ·ÎļþÖỶ¨Ò壬ÔÚÕâ¸öÍ·ÎļþÖÐÖ÷Òª±»¶¨ÒåÁËÈý¸öÀ࣬ÓÉÕâÈý¸öÀà¿ØÖƶÔÎļþµÄ¸÷ÖÖÊäÈëÊä³ö²Ù×÷£¬ËûÃÇ·Ö±ðÊÇifstream¡¢ofstream¡¢fstream£¬ÆäÖÐfstreamÀàÊÇÓÉiostreamÀàÅÉÉú¶øÀ´£¬ËûÃÇÖ®¼äµÄ¼Ì³Ð¹Øϵ¼ûÏÂͼËùʾ¡£

¡¡¡¡ÓÉÓÚÎļþÉ豸²¢²»ÏñÏÔʾÆ÷ÆÁÄ»Óë¼üÅÌÄÇÑùÊDZê׼ĬÈÏÉ豸£¬ËùÒÔËüÔÚfstream.hÍ·ÎļþÖÐÊÇûÓÐÏñcoutÄÇÑùÔ¤Ïȶ¨ÒåµÄÈ«¾Ö¶ÔÏó£¬ËùÒÔÎÒÃDZØÐë×Ô¼º¶¨ÒåÒ»¸ö¸ÃÀàµÄ¶ÔÏó£¬ÎÒÃÇÒªÒÔÎļþ×÷ΪÉ豸ÏòÎļþÊä³öÐÅÏ¢(Ò²¾ÍÊÇÏòÎļþдÊý¾Ý)£¬ÄÇô¾ÍÓ¦¸ÃʹÓÃofstreamÀà¡£

¡¡¡¡ofstreamÀàµÄĬÈϹ¹Ô캯ÊýÔ­ÐÎΪ£º

¡¡¡¡ofstream::ofstream(const char *filename,int mode = ios::out,int openprot = filebuf::openprot);

¡¡¡¡filename£º¡¡¡¡Òª´ò¿ªµÄÎļþÃû
¡¡¡¡mode£º¡¡¡¡¡¡¡¡Òª´ò¿ªÎļþµÄ·½Ê½
¡¡¡¡prot£º¡¡¡¡¡¡¡¡´ò¿ªÎļþµÄÊôÐÔ

¡¡¡¡ÆäÖÐmodeºÍopenprotÕâÁ½¸ö²ÎÊýµÄ¿ÉÑ¡Ïî±í¼ûÏÂ±í£º

modeÊôÐÔ±í

¡¡¡¡ios::app£º¡¡¡¡¡¡ÒÔ×·¼ÓµÄ·½Ê½´ò¿ªÎļþ
¡¡¡¡ios::ate£º¡¡¡¡¡¡Îļþ´ò¿ªºó¶¨Î»µ½Îļþ⣬ios:app¾Í°üº¬ÓдËÊôÐÔ
¡¡¡¡ios::binary£º ¡¡ÒÔ¶þ½øÖÆ·½Ê½´ò¿ªÎļþ£¬È±Ê¡µÄ·½Ê½ÊÇÎı¾·½Ê½¡£Á½ÖÖ·½Ê½µÄÇø±ð¼ûÇ°ÎÄ
¡¡¡¡ios::in£º¡¡¡¡¡¡ ÎļþÒÔÊäÈ뷽ʽ´ò¿ª
¡¡¡¡ios::out£º¡¡¡¡¡¡ÎļþÒÔÊä³ö·½Ê½´ò¿ª
¡¡¡¡ios::trunc£º¡¡¡¡Èç¹ûÎļþ´æÔÚ£¬°ÑÎļþ³¤¶ÈÉèΪ0

¡¡¡¡¿ÉÒÔÓá°»ò¡±°ÑÒÔÉÏÊôÐÔÁ¬½ÓÆðÀ´£¬Èçios::out|ios::binary¡£

openprotÊôÐÔ±í:

¡¡¡¡0£ºÆÕͨÎļþ£¬´ò¿ª·ÃÎÊ
¡¡¡¡1£ºÖ»¶ÁÎļþ
¡¡¡¡2£ºÒþº¬Îļþ
¡¡¡¡4£ºÏµÍ³Îļþ

¡¡¡¡¿ÉÒÔÓá°»ò¡±»òÕß¡°+¡±°ÑÒÔÉÏÊôÐÔÁ¬½ÓÆðÀ´ £¬Èç3»ò1|2¾ÍÊÇÒÔÖ»¶ÁºÍÒþº¬ÊôÐÔ´ò¿ªÎļþ¡£

¡¡¡¡Ê¾Àý´úÂëÈçÏ£º

//³ÌÐò×÷Õß:¹ÜÄþ 
//Õ¾µã:www.cndev-lab.com 
//ËùÓиå¼þ¾ùÓаæȨ,ÈçҪתÔØ,ÇëÎñ±ØÖøÃû³ö´¦ºÍ×÷Õß 
 
#include <fstream
using namespace std; 
 
int main()  

    ofstream myfile("c:\\1.txt",ios::out|ios::trunc,0); 
    myfile<<"ÖйúÈí¼þ¿ª·¢ÊµÑéÊÒ"<<endl<<"ÍøÖ·£º"<<"www.cndev-lab.com"; 
    myfile.close() 
    system("pause"); 
}

¡¡¡¡ÎļþʹÓÃÍêºó¿ÉÒÔʹÓÃclose³ÉÔ±º¯Êý¹Ø±ÕÎļþ¡£

¡¡¡¡ios::appΪ׷¼Óģʽ£¬ÔÚʹÓÃ×·¼ÓģʽµÄʱºòͬʱ½øÐÐÎļþ״̬µÄÅжÏÊÇÒ»¸ö±È½ÏºÃµÄÏ°¹ß¡£

¡¡¡¡Ê¾ÀýÈçÏ£º

//³ÌÐò×÷Õß:¹ÜÄþ 
//Õ¾µã:www.cndev-lab.com 
//ËùÓиå¼þ¾ùÓаæȨ,ÈçҪתÔØ,ÇëÎñ±ØÖøÃû³ö´¦ºÍ×÷Õß 
#include <iostream
#include <fstream
using namespace std; 
int main()  

    ofstream myfile("c:\\1.txt",ios::app,0); 
    if(!myfile)//»òÕßд³Émyfile.fail() 
    { 
        cout<<"Îļþ´ò¿ªÊ§°Ü£¬Ä¿±êÎļþ״̬¿ÉÄÜΪֻ¶Á£¡"; 
        system("pause"); 
        exit(1); 
    } 
    myfile<<"ÖйúÈí¼þ¿ª·¢ÊµÑéÊÒ"<<endl<<"ÍøÖ·£º"<<"www.cndev-lab.com"<<endl; 
    myfile.close(); 
}

¡¡¡¡ÔÚ¶¨ÒåifstreamºÍofstreamÀà¶ÔÏóµÄʱºò£¬ÎÒÃÇÒ²¿ÉÒÔ²»Ö¸¶¨Îļþ¡£ÒÔºó¿ÉÒÔͨ¹ý³ÉÔ±º¯Êýopen()ÏÔʽµÄ°ÑÒ»¸öÎļþÁ¬½Óµ½Ò»¸öÀà¶ÔÏóÉÏ¡£

¡¡¡¡ÀýÈ磺

//³ÌÐò×÷Õß:¹ÜÄþ 
//Õ¾µã:www.cndev-lab.com 
//ËùÓиå¼þ¾ùÓаæȨ,ÈçҪתÔØ,ÇëÎñ±ØÖøÃû³ö´¦ºÍ×÷Õß 
#include <iostream
#include <fstream
using namespace std; 
int main()  

    ofstream myfile; 
    myfile.open("c:\\1.txt",ios::out|ios::app,0); 
    if(!myfile)//»òÕßд³Émyfile.fail() 
    { 
        cout<<"Îļþ´´½¨Ê§°Ü,´ÅÅ̲»¿Éд»òÕßÎļþΪֻ¶Á!"; 
        system("pause"); 
        exit(1); 
    } 
    myfile<<"ÖйúÈí¼þ¿ª·¢ÊµÑéÊÒ"<<endl<<"ÍøÖ·£º"<<"www.cndev-lab.com"<<endl; 
    myfile.close(); 
}

¡¡¡¡ÏÂÃæÎÒÃÇÀ´¿´Ò»ÏÂÊÇÈçºÎÀûÓÃifstreamÀà¶ÔÏ󣬽«ÎļþÖеÄÊý¾Ý¶ÁÈ¡³öÀ´£¬È»ºóÔÙÊä³öµ½±ê×¼É豸ÖеÄÀý×Ó¡£

¡¡¡¡´úÂëÈçÏ£º

//³ÌÐò×÷Õß:¹ÜÄþ 
//Õ¾µã:www.cndev-lab.com 
//ËùÓиå¼þ¾ùÓаæȨ,ÈçҪתÔØ,ÇëÎñ±ØÖøÃû³ö´¦ºÍ×÷Õß 
#include <iostream
#include <fstream
#include <string
using namespace std; 
int main()  

    ifstream myfile; 
    myfile.open("c:\\1.txt",ios::in,0); 
    if(!myfile) 
    { 
        cout<<"Îļþ¶Á´íÎó"; 
        system("pause"); 
        exit(1); 
    } 
    char ch; 
    string content; 
    while(myfile.get(ch)) 
    { 
        content+=ch; 
        cout.put(ch);//cout<<ch;ÕâôдҲÊÇ¿ÉÒԵĠ
    } 
    myfile.close(); 
    cout<<content; 
    system("pause"); 
}

¡¡¡¡ÉÏÀýÖУ¬ÎÒÃÇÀûÓóÉÔ±º¯Êýget()£¬ÖðÒ»µÄ¶ÁÈ¡ÎļþÖеÄÓÐЧ×Ö·û£¬ÔÙÀûÓÃput()³ÉÔ±º¯Êý£¬½«ÎļþÖеÄÊý¾Ýͨ¹ýÑ­»·ÖðÒ»Êä³öµ½±ê×¼É豸(ÆÁÄ»)ÉÏ£¬get()³ÉÔ±º¯Êý»áÔÚÎļþ¶Áµ½Ä¬Î²µÄʱºò·µ»Ø¼ÙÖµ£¬ËùÒÔÎÒÃÇ¿ÉÒÔÀûÓÃËüµÄÕâ¸öÌØÐÔ×÷ΪwhileÑ­»·µÄÖÕÖ¹Ìõ¼þ£¬ÎÒÃÇͬʱҲÔÚÉÏÀýÖÐÒýÈëÁËC++·ç¸ñµÄ×Ö·û´®ÀàÐÍstring£¬ÔÚÑ­»·¶ÁÈ¡µÄʱºòÖðÒ»±£´æµ½contentÖУ¬ÒªÊ¹ÓÃstringÀàÐÍ£¬±ØÐë°üº¬string.hµÄÍ·Îļþ¡£

¡¡¡¡ÎÒÃÇÔÚ¼òµ¥½éÉܹýofstreamÀàºÍifstreamÀàºó£¬ÎÒÃÇÔÙÀ´¿´Ò»ÏÂfstreamÀ࣬fstreamÀàÊÇÓÉiostreamÅÉÉú¶øÀ´£¬fstreamÀà¶ÔÏó¿ÉÒÔͬ¶ÔÎļþ½øÐжÁд²Ù×÷¡£

¡¡¡¡Ê¾Àý´úÂëÈçÏ£º

//³ÌÐò×÷Õß:¹ÜÄþ 
//Õ¾µã:www.cndev-lab.com 
//ËùÓиå¼þ¾ùÓаæȨ,ÈçҪתÔØ,ÇëÎñ±ØÖøÃû³ö´¦ºÍ×÷Õß 
#include <iostream
#include <fstream
using namespace std; 
int main()  

    fstream myfile; 
    myfile.open("c:\\1.txt",ios::out|ios::app,0); 
    if(!myfile) 
    { 
        cout<<"Îļþд´íÎó,ÎļþÊôÐÔ¿ÉÄÜΪֻ¶Á!"<<endl; 
        system("pause"); 
        exit(1); 
    } 
    myfile<<"ÖйúÈí¼þ¿ª·¢ÊµÑéÊÒ"<<endl<<"ÍøÖ·£º"<<"www.cndev-lab.com"<<endl;   
    myfile.close(); 
 
    myfile.open("c:\\1.txt",ios::in,0); 
    if(!myfile) 
    { 
        cout<<"Îļþ¶Á´íÎó,Îļþ¿ÉÄܶªÊ§!"<<endl; 
        system("pause"); 
        exit(1); 
    } 
    char ch; 
    while(myfile.get(ch)) 
    { 
        cout.put(ch); 
    } 
    myfile.close(); 
    system("pause"); 
}

¡¡¡¡ÓÉÓÚfstreamÀà¿ÉÒÔ¶ÔÎļþͬʱ½øÐжÁд²Ù×÷£¬ËùÒÔ¶ÔËüµÄ¶ÔÏó½øÐгõʼ»°µÄʱºòÒ»¶¨ÒªÏÔʽµÄÖ¸¶¨modeºÍopenprot²ÎÊý¡£

¡¡¡¡½ÓÏÂÀ´ÎÒÃÇÀ´Ñ§Ï°Ò»Ï´®Á÷ÀàµÄ»ù´¡ÖªÊ¶£¬Ê²Ã´½Ð´®Á÷Àࣿ
¡¡¡¡¼òµ¥µÄÀí½â¾ÍÊÇÄܹ»¿ØÖÆ×Ö·û´®ÀàÐͶÔÏó½øÐÐÊäÈëÊä³öµÄÀ࣬C++²»¹â¿ÉÒÔÖ§³ÖC++·ç¸ñµÄ×Ö·û´®Á÷¿ØÖÆ£¬»¹¿ÉÒÔÖ§³ÖC·ç¸ñµÄ×Ö·û´®Á÷¿ØÖÆ¡£

¡¡¡¡ÎÒÃÇÏÈ¿´¿´¿´C++ÊÇÈçºÎ¶ÔC·ç¸ñµÄ×Ö·û´®Á÷½øÐпØÖƵģ¬CÖеÄ×Ö·û´®ÆäʵҲ¾ÍÊÇ×Ö·ûÊý×飬×Ö·ûÊý×éÄÚµÄÊý¾ÝÔÚÄÚ´æÖеÄλÖõÄÅÅÁÐÊÇÁ¬ÐøµÄ£¬ÎÒÃÇͨ³£ÓÃchar str[size]»òÕßchar *strµÄ·½Ê½ÉùÃ÷´´½¨C·ç¸ñ×Ö·ûÊý×飬ΪÁËÄÜÈÃ×Ö·ûÊý×é×÷ΪÉ豸²¢ÌṩÊäÈëÊä³ö²Ù×÷£¬C++ÒýÈëÁËostrstream¡¢istrstream¡¢strstreamÕâÈý¸öÀ࣬ҪʹÓÃËûÃÇ´´½¨¶ÔÏó¾Í±ØÐë°üº¬strstream.hÍ·Îļþ¡£
¡¡¡¡istrstreamÀàÓÃÓÚÖ´ÐÐC·ç¸ñµÄ´®Á÷µÄÊäÈë²Ù×÷£¬Ò²¾ÍÊÇÒÔ×Ö·û´®Êý×é×÷ΪÊäÈëÉ豸¡£
¡¡¡¡ostrstreamÀàÓÃÓÚÖ´ÐÐC·ç¸ñµÄ´®Á÷µÄÊä³ö²Ù×÷£¬Ò²¾ÍÊÇÒ»×Ö·û´®Êý×é×÷ΪÊä³öÉ豸¡£
¡¡¡¡strstreamÀàͬʱ¿ÉÒÔÖ§³ÖC·ç¸ñµÄ´®Á÷µÄÊäÈëÊä³ö²Ù×÷¡£

¡¡¡¡istrstreamÀàÊÇ´Óistream£¨ÊäÈëÁ÷ÀࣩºÍstrstreambase£¨×Ö·û´®Á÷»ùÀࣩÅÉÉú¶øÀ´£¬ostrstreamÊÇ´Óostream£¨Êä³öÁ÷ÀࣩºÍstrstreambase£¨×Ö·û´®Á÷»ùÀࣩÅÉÉú¶øÀ´£¬strstreamÔòÊÇ´Óiostream(ÊäÈëÊä³öÁ÷Àà)ºÍºÍstrstreambase£¨×Ö·û´®Á÷»ùÀࣩÅÉÉú¶øÀ´¡£

¡¡¡¡ËûÃǵļ̳йØϵÈçÏÂͼËùʾ:

¡¡¡¡´®Á÷ͬÑù²»ÊDZê×¼É豸£¬²»»áÓÐÔ¤Ïȶ¨ÒåºÃµÄÈ«¾Ö¶ÔÏó£¬ËùÒÔ²»ÄÜÖ±½Ó²Ù×÷£¬ÐèҪͨ¹ý¹¹Ô캯Êý´´½¨¶ÔÏó¡£

¡¡¡¡ÀàistrstreamµÄ¹¹Ô캯ÊýÔ­ÐÎÈçÏ£º
¡¡¡¡istrstream::istrstream(const char *str,int size);
¡¡¡¡²ÎÊý1±íʾ×Ö·û´®Êý×é,¶ø²ÎÊý2±íʾÊý×é´óС£¬µ±sizeΪ0ʱ£¬±íʾistrstreamÀà¶ÔÏóÖ±½ÓÁ¬½Óµ½ÓÉstrËùÖ¸ÏòµÄÄÚ´æ¿Õ¼ä²¢ÒÔ\0½áβµÄ×Ö·û´®¡£

¡¡¡¡ÏÂÃæµÄʾÀý´úÂë¾ÍÊÇÀûÓÃistrstreamÀà´´½¨Àà¶ÔÏó£¬Öƶ¨Á÷ÊäÈëÉ豸Ϊ×Ö·û´®Êý×飬ͨ¹ýËüÏòÒ»¸ö×Ö·ûÐͶÔÏóÊäÈëÊý¾Ý¡£

¡¡¡¡´úÂëÈçÏ£º

//³ÌÐò×÷Õß:¹ÜÄþ 
//Õ¾µã:www.cndev-lab.com 
//ËùÓиå¼þ¾ùÓаæȨ,ÈçҪתÔØ,ÇëÎñ±ØÖøÃû³ö´¦ºÍ×÷Õß 
#include <iostream
#include <strstream
using namespace std; 
int main()  

    char *name = "www.cndev-lab.com"; 
    int arraysize = strlen(name)+1; 
    istrstream is(name,arraysize); 
    char temp; 
    is>>temp; 
    cout<<temp; 
    system("pause"); 
}

¡¡¡¡ÀàostrstreamÓÃÓÚÖ´Ðд®Á÷µÄÊä³ö£¬ËüµÄ¹¹Ô캯ÊýÈçÏÂËùʾ£º

¡¡¡¡ostrstream::ostrstream(char *_Ptr,int streamsize,int Mode = ios::out);

¡¡¡¡µÚÒ»¸ö²ÎÊýÊÇ×Ö·ûÊý×飬µÚ¶þ¸öÊÇ˵Ã÷Êý×éµÄ´óС£¬µÚÈý¸ö²ÎÊýÊÇÖ¸´ò¿ª·½Ê½¡£

¡¡¡¡ÎÒÃÇÀ´Ò»¸öʾÀý´úÂ룺

#include <iostream
#include <strstream
using namespace std; 
int main()  

    int arraysize=1; 
    char *pbuffer=new char[arraysize]; 
    ostrstream ostr(pbuffer,arraysize,ios::out); 
    ostr<<arraysize<<ends;//ʹÓÃostrstreamÊä³öµ½Á÷¶ÔÏóµÄʱºò,ÒªÓÃends½áÊø×Ö·û´® 
    cout<<pbuffer; 
    delete[] pbuffer; 
    system("pause"); 
}

¡¡¡¡ÉÏÃæµÄ´úÂëÖУ¬ÎÒÃÇ´´½¨Ò»¸öc·ç¸ñµÄ´®Á÷Êä³ö¶ÔÏóostr£¬ÎÒÃǽ«arraysizeÄÚµÄÊý¾Ý³É¹¦µÄÒÔ×Ö·û´®µÄÐÎʽÊä³öµ½ÁËostr¶ÔÏóËùÖ¸ÏòµÄpbufferÖ¸ÕëµÄ¶Ñ¿Õ¼äÖУ¬pbufferÒ²ÕýÊÇÎÒÃÇÒªÊä³öµÄ×Ö·û´®Êý×飬ÔÚ½áβҪʹÓÃends½áÊø×Ö·û´®£¬Èç¹û²»Õâô×ö¾ÍÓÐÒç³öµÄΣÏÕ¡£

¡¾·µ»Ø¶¥²¿¡¿ ¡¾´òÓ¡±¾Ò³¡¿ ¡¾¹Ø±Õ´°¿Ú¡¿

¹ØÓÚÎÒÃÇ / ¸øÎÒÁôÑÔ / °æȨ¾Ù±¨ / Òâ¼û½¨Òé / ÍøÕ¾±à³ÌQQȺ   
Copyright ©2003- 2024 Lihuasoft.net webmaster(at)lihuasoft.net ¼ÓÔØʱ¼ä 0.00354