亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習(xí)啦 > 學(xué)習(xí)英語 > 專業(yè)英語 > 計(jì)算機(jī)英語 > c語言puts和gets的用法

      c語言puts和gets的用法

      時(shí)間: 長思709 分享

      c語言puts和gets的用法

        在語言使用過程中我們常常用到庫函數(shù),這些庫函數(shù)是又人事先編譯好的,那么它們內(nèi)部的代碼究竟如何?我們可以根據(jù)各函數(shù)的說明及其功能編譯出同樣的函數(shù)。下面我們來看看c語言puts和gets的用法分別是什么。
        #include "Stdio.h"
        #include "Conio.h"
        char *mygets(char s[])
        { int i;
        for(i=0;s[i]!='\n';i++)
        s[i]=getchar();
        return s;
        }
        int myputs(char *str)
        {
        int i;
        for(i=0;*str!='\0';i++)
        { putchar(*str);
        str++;
        }
        return;
        }
        main()
        {
        char *p;
        myputs(gets(p));
        getch();
        }
        從mygets函數(shù)的說明部分char *mygets(char s[])可以看到,該函數(shù)以字符指針變量為形參,最后返回一個(gè)字符指針變量。再看看函數(shù)體部分:int i; for(i=0;s[i]!='\n';i++)  s[i]=getchar();for循環(huán)中將getchar()輸入的字符存放到動(dòng)態(tài)數(shù)據(jù)s[ ]中,循環(huán)條件是:s[i]!='\n' ,即是遇到回車時(shí)退出循環(huán)。
        myputs函數(shù)以字符指針變量為形參返回一個(gè)整形數(shù)。for(i=0;*str!='\0';i++)的意思是:從字符串的第一個(gè)字符開始循環(huán),直到這個(gè)字符串結(jié)束就退出for循環(huán),'\0' 是字符串的結(jié)束符,任何字符串之后都會(huì)自動(dòng)加上'\0'。for循環(huán)循環(huán)體通過指針變量的移動(dòng)將指針?biāo)赶虻淖址饌€(gè)輸出,putchar(*str)是輸出指定字符,str++是移動(dòng)指針。
        主函數(shù)中以新定義的指針變量p為mygets函數(shù)的實(shí)參,然后mygets函數(shù)的返回值作為myputs的實(shí)參。
      512973