c語言字元陣列一些啟示

2021-06-28 18:52:07 字數 854 閱讀 1329

最近博主在學習《linux系統程式設計》,所以想記下來學習的一些心得,與大家分享,也備以後回顧只用。

第一天,就從我在今天學習過程遇到的問題寫起,博主今天在學習標準io庫,遇到乙個問題,關於字元指標的問題,**如下:

1 #include2 #include3 

4 int main()

5 15 *s='\0';

16 printf("s=%s\n",s);

17 exit(0);

18 }

~

通過查資料得知問題出現在char *s 和*s++=c。因為在程式中,字元指標沒有初始化,即沒有給該指標賦值(s不知道指向何處),那麼如果給該指標賦值,那麼值不知存哪去,而s++也沒有意義。

所以應該先給s賦值乙個位址字元陣列的位址,然後在往這個位址賦值,加1賦值等等。所以改進**如下

1 #include2 #include3 

4 int main()

5 17 *s='\0';

18 printf("s=%s\n",str);

19 exit(0);

20 }

執行結果如下圖所示:

由於較少使用c語言,所以一些基本的知識點都忘了,所以我也感受到了,學習語言一定要多寫,看著都懂,但是當自己寫的時候,就會碰到各種細節問題。平時看起來很簡單的問題,當自己親身躬為的時候,有時候並不是那麼簡單。

可能我寫很基礎或不是完全正確,希望大神可以指點指點。

關於字元陣列的一些玩意(C語言)

字元陣列初始化 1.char ch 6 2.char ch 6 china 3.char ch china 4.char ch 12 how are you 注意 普通陣列下標控制迴圈,字串 0結束迴圈 字串處理函式 使用前加 include puts 輸出字串 gets輸入字串 使用前加 incl...

阿里培訓的一些啟示

啟示1 心態。拓展訓練的時候,有乙個專案是高空抓竿,我認為這很簡單,從地面上看,這個動作很並不難。但是當我爬上8公尺高的桿子,站在晃動的桿子上看到下面的風景的時候,我心裡卻充滿了恐懼,我一度覺得我沒辦法再成功,我沒多想幾乎是逼著眼睛跳出去的,最後抓住了桿子,挑戰成功。事後,我想起了列禦寇學射的故事,...

C語言陣列的一些問題

我們都知道,陣列名可以當成乙個指標,同樣的函式名也可以當成乙個函式指標,指向函式的入口位址。現在有乙個問題,陣列名這個指標指向的是什麼呢?如果對陣列名再取位址,得到的又是什麼呢?我們來驗證這兩個問題。輸入以下 include stdio.h int main int p 3 a printf d,d...