• <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函數可以通過指針來訪問 字符串

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

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

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

            例如如下的代碼:

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

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

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


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

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

            久久ww精品w免费人成| 久久天天躁狠狠躁夜夜不卡| 久久只有这里有精品4| 四虎国产精品免费久久久 | 久久久久久久99精品免费观看| 久久久久久夜精品精品免费啦| 少妇久久久久久久久久| 69久久精品无码一区二区| 亚洲国产二区三区久久| 久久99精品国产麻豆蜜芽| 久久免费视频6| 97久久婷婷五月综合色d啪蜜芽| 亚洲熟妇无码另类久久久| 国内精品九九久久久精品| 丁香久久婷婷国产午夜视频| 久久精品一区二区影院| 久久婷婷色香五月综合激情| 国产精品免费福利久久| 精品久久久久久久中文字幕| 欧美精品一区二区久久| 日本人妻丰满熟妇久久久久久| 久久国产精品99精品国产987| 日本精品久久久久影院日本 | 亚洲国产日韩欧美综合久久| 久久香蕉国产线看观看精品yw| 久久精品男人影院| 亚洲欧美精品一区久久中文字幕| 一本色道久久88—综合亚洲精品| 香蕉久久一区二区不卡无毒影院| 免费精品久久天干天干| 国产欧美久久久精品| 久久精品国产久精国产果冻传媒| 7国产欧美日韩综合天堂中文久久久久 | 日韩精品久久无码中文字幕| 丁香五月综合久久激情| 亚洲色大成网站WWW久久九九| 99久久精品无码一区二区毛片| 一本色道久久HEZYO无码| 久久久噜噜噜久久中文字幕色伊伊| 久久久久人妻精品一区| 久久婷婷五月综合国产尤物app|