字串指標- C語言知識彙總 - IT人

文章推薦指數: 80 %
投票人數:10人

一、字串指標C語言中沒有特定的字串型別,通常是將字串放在一個字元陣列中,這裡不妨演示一下: #include #include int main(){ ... Togglenavigation IT人 IT人 C語言知識彙總|51-C語言字串指標(指向字串的指標) Neutionwei發表於 2020-09-27 一、字串指標 C語言中沒有特定的字串型別,通常是將字串放在一個字元陣列中,這裡不妨演示一下: #include #include intmain() { charstr[]="https://www.csdn.net"; intlen=strlen(str),i; //直接輸出字串 printf("%s\n",str); //每次輸出一個字元 for(i=0;i #include intmain() { charstr[]="https://www.csdn.net"; char*pstr=str; intlen=strlen(str),i; //使用*(pstr+i) for(i=0;i #include intmain() { char*str="https://www.csdn.net"; intlen=strlen(str),i; //直接輸出字串 printf("%s\n",str); //使用*(str+i) for(i=0;i intmain() { char*str="HelloWorld!"; str="IloveC!";//正確 str[3]='P';//錯誤 return0; } 這段程式碼能夠正常編譯和連結,但在執行時會出現段錯誤(SegmentFault)或者寫入位置錯誤。

第5行程式碼是正確的,可以更改指標變數本身的指向;第6行程式碼是錯誤的,不能修改字串中的字元。

二、到底使用字元陣列還是字串常量 在程式設計過程中如果只涉及到對字串的讀取,那麼字元陣列和字串常量都能夠滿足要求;如果有寫入(修改)操作,那麼只能使用字元陣列,不能使用字串常量。

獲取使用者輸入的字串就是一個典型的寫入操作,只能使用字元陣列,不能使用字串常量,請看下面的程式碼: #include intmain() { charstr[30]; gets(str); printf("%s\n",str); return0; } 執行結果: CC++JavaPythonJavaScript​​​​​​​ CC++JavaPythonJavaScript 最後總結一下,C語言有兩種表示字串的方法,一種是字元陣列,另一種是字串常量,它們在記憶體中的儲存位置不同,使得字元陣列可以讀取和修改,而字串常量只能讀取不能修改。

相關文章 LeetCode-844.比較含退格的字串(棧、雙指標) 2020-11-20 LeetCode C語言解讀assert函式 2020-11-20 初學計算機語言者(C語言,C++,java,pytion,C#) 2020-11-21 JavaC++C# C語言列舉資料型別 2020-11-21 C語言I部落格作業05 2020-11-21 填充每個節點的下一個右側節點指標 2020-11-21 PID演算法的C語言實現 2020-11-21 演算法 golangcount單字元字串統計函式 2020-11-21 統計Go C語言瑣碎知識 2020-11-21 2020.11.21ES6--11解構賦值ES6新增字串的簡易宣告(反引號)物件宣告的簡化箭頭函式傳參時可以賦初始值 2020-11-21 JavaScriptES6 字串中大小寫轉換輸出 2020-11-22 Java設計模式-17、直譯器模式-自定義語言的實現 2020-11-22 Java設計模式 作業系統實驗:銀行家演算法(C語言) 2020-11-22 演算法 形式語言與自動機:實驗二——DFA識別句子 2020-11-22 Java語言搭建介面自動化框架學習一(單介面請求和響應) 2020-11-22 Java框架 C語言小白走過的彎路 2020-11-22 組合語言-學習記錄(二) 2020-11-22 (2)verilog與Systemverilog兩種語言編寫打兩拍 2020-11-22 C語言練習——資料加密 2020-11-22 加密 C語言入門基礎 2020-11-22 最新文章 StrategyAnalytics:2022年Q1全球智慧音響出貨量下降5% Canalys:2022年Q1中國雲基礎設施服務支出同比增長21% SegmentFault思否技術週刊--這份前端大殺招,接住! 利用微信公眾號提供的官方API上傳圖片獲取永久圖片素材!當圖床用! 一文入門SpringCloudTencent Vue3中的teleport節點傳送 CSSSandBox 遍歷ES節點校驗分詞(qbit) AWS加速西門子智慧家居系統的雲上構建 九安:如何掘金智慧視覺全球新“藍海”|第一財經X亞馬遜雲科技 談談資料中臺建設中的“通用化+標準化+敏捷性”! C++煉氣期之算術運算子



請為這篇文章評分?