• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 25, comments - 7, trackbacks - 0, articles - 0

            今天在linux做幾個進程通信的實驗老出錯,搞了半天原來字符輸入輸出引起的錯誤
            注意:
            在C語言中print函數(shù)可以通過指針來訪問 字符串

            例如如下的代碼:
            #include <stdio.h>

            void  main(void)
            {
             int i;
             char *a="hello";
             
              printf("%s\n",a);
            }

            在這段代碼中指針a 指向的是"hello"這個字符串(我的理解是實際指向的是一個 "hello\0"字符串,因為系統(tǒng)自動為字符串常量加一個'\0'表示字符串結束

            例如如下的代碼:

            char a[5]={"hello"};  

            系統(tǒng)會報錯,這是為什么呢???
            答案是在存儲字符串常量時 系統(tǒng)自動給字符串末尾加了一個'\0'
            因此這個時候數(shù)組長度不夠當然會報錯了
            應該如下定義和賦值:

            char a[6]={"hello"}; 


            還有一個未解決的問題是:
            通過 
            char *a="hello";
            語句之后 是不是*a='h' ,*(a+1)='e'......以此類推
            我在VC上實驗 情況到是這樣的

            明天在好好看下 C語言中的字符串那章
            以前學的時候就沒怎么看 因為關于字符和字符串操作的函數(shù)實在是太多了
            數(shù)組和指針也是也它有很大的關系

            久久99精品国产| 精品国产乱码久久久久久浪潮| 久久中文娱乐网| 亚洲日本va午夜中文字幕久久 | 麻豆成人久久精品二区三区免费| 久久人人爽人人爽人人片AV高清| 亚洲一级Av无码毛片久久精品| 香蕉久久久久久狠狠色| 无码久久精品国产亚洲Av影片| 人妻无码αv中文字幕久久琪琪布| 91精品国产乱码久久久久久| 久久精品国产精品亚洲毛片| 中文精品久久久久国产网址| 亚洲精品国产第一综合99久久| 久久精品国内一区二区三区| 伊色综合久久之综合久久| 国产亚洲欧美精品久久久| 日本精品久久久久影院日本| 久久免费精品视频| 亚洲午夜精品久久久久久人妖| 国产精品美女久久福利网站| 看全色黄大色大片免费久久久| 国产成人香蕉久久久久| 国产99久久久久久免费看| 国产高潮国产高潮久久久91| 国产精品欧美久久久久天天影视| 好久久免费视频高清| 99国产精品久久久久久久成人热| 久久综合88熟人妻| 一级做a爰片久久毛片16| 国产91久久综合| 久久婷婷五月综合成人D啪| 性做久久久久久久久浪潮| 精品国产乱码久久久久软件| 久久天天躁狠狠躁夜夜avapp| 少妇高潮惨叫久久久久久| 国产一级做a爰片久久毛片| 久久无码av三级| 亚洲AV无码久久精品狠狠爱浪潮 | 久久香蕉综合色一综合色88| 久久青青草原精品国产软件|