C語言,函式中的指標問題?

發布 科技 2024-03-30
14個回答
  1. 匿名使用者2024-01-26

    這其實是可以理解的。

    只需將 %s、%c、%p 放在一起即可。

    首先,%s 是最常要理解的東西,就是告訴程式它後面的變數是乙個字串,在 C 中是乙個字元陣列,型別是 char* 或 char,換句話說,你告訴程式我會給你乙個指標,然後你讀取指標指向的值。

    然後%c告訴程式它後面的變數是乙個字元,型別是char,區別已經很明顯了,這時你告訴程式我給你乙個字元,你在%c處給我列印出來。 但是,如果您提供指標,程式將直接將位址本身列印為字元。 但是,乙個位址必須超過乙個位元組,即超過char的大小,程式會忽略多餘的位址,只讀取第乙個位元組。

    如果您也使用 %p,請告訴程式您將提供指標並將其列印給我。 將輸出位址最後兩位數字的16十進位數檢查到ASCII表中,將其轉換為字元,您會發現它正是您面前%c列印出來的字元。

  2. 匿名使用者2024-01-25

    ch 是乙個指標,輸出 ch 的第 i 個位置的字元應該是 ch[i] 或 * (ch+i),而不是 ch+i,你的 ** 是錯誤的。

  3. 匿名使用者2024-01-24

    C 應該用 * (ch + number) 輸出 您使用的 ch 指標直接輸出 ch 指標的最小位元組的值。

  4. 匿名使用者2024-01-23

    C 語言 071 指標的定義和使用。

  5. 匿名使用者2024-01-22

    這裡的 &p 位址不會改變,要麼無法列印,要麼程式在列印語句之前已經崩潰並退出。

    圖中 1 處的指標 p 未初始化,不指向任何儲存單元,圖中 2 處的賦值和寫入操作無法執行,程式會在這裡崩潰並退出。

  6. 匿名使用者2024-01-21

    此圖中第 378 行的語句在不同的編譯系統中可能會有不同的解釋。 因此,一般來說,在模稜兩可的情況下,最好不要使用這種寫作方式,在這種情況下,它首先是後續自我強加操作的結果。

  7. 匿名使用者2024-01-20

    本主題介紹 C 語言指標,以幫助您在短時間內掌握各種玩指標的方式。 指標是C語言的難點,也是C語言的重點,如果不能玩指標,學習C語言就沒有意義了。

  8. 匿名使用者2024-01-19

    總結。 你好, 1.首先,分析用什麼語言寫作。

    這個問題是計算檔案中的行數、單詞數和字元數。 對我來說,相比於其他語言,我對C語言比較熟悉,我覺得面對這種小程式,用C語言寫起來比較容易。

    2.分析需要幾個函式。

    我們需要計算行數、字數和字元數,因此我們需要使用三個函式來分別計算這三個函式。 此外,您還可以使用函式來統計這三個,並且在程式執行時,您可以直接顯示這三個。 當然,還有另乙個功能,那就是主功能。

    3.單獨編寫函式內容。

    每個函式的內容其實都很簡單,後面會介紹和解釋。

    c 語言指標問題。

    你好, 1.首先要分析的是分析文件中的行數、字數和字元數。 對我來說,相比於其他語言,我對C語言比較熟悉,我覺得面對這種小程式,用C語言寫起來比較容易。

    2.分析需要使用幾個函式來統計行數、字數和字元數,因此我們需要使用三個函式來分別計算這三個函式。 此外,您還可以使用函式來統計這三個,並且在程式執行時,您可以直接顯示這三個。

    當然,還有另乙個功能,那就是主功能。 3.將每個函式的內容單獨編寫其實很容易,後面會展示和解釋。

    使用 C 程式,標題已經描述過了。

    您好,我正在盡力為您檢查! 你檢查問題,謝謝。

    文獻檢索一般是按關鍵詞進行的,而英文文學的關鍵詞是出現最多的詞。 現在給定乙個英文文件,它被儲存在乙個字串陣列中,陣列的每個元素在文件中儲存乙個句子,並且該書的內容不超過 10,000 個句子。 (單詞僅由字母組成)。

    1.實現乙個函式,以文件內容和單詞作為引數來計算該單詞在文獻中的出現次數。

    作為引數返回給函式的呼叫方),陣列中第一次出現的單詞的指標用作返回值。

    您好,我們只能為您找到這些內容,或者您詢問您的朋友,他們可能會給您更詳細的答案! 謝謝

  9. 匿名使用者2024-01-18

    C 語言 071 指標的定義和使用。

  10. 匿名使用者2024-01-17

    C 語言 071 指標的定義和使用。

  11. 匿名使用者2024-01-16

    1. 如果有定義,char y[4]="321"

    則表示式 *y+2 的值為'5' 。

    分析:y 是字串陣列的第乙個元素'3',並且 *y 的值是字元'3',加 2,是字元'5'(也可以說是乙個角色。'5'ASC 程式碼值)。

    2. 如果有定義,char z[2][4]=; ,表示式 *(*z+2) 的值為't'。

    分析:z是二維字串陣列的第乙個字串“mat”的位址,*z的值是“mat”的第乙個元素的字元。'm',加 2,是字元't',然後取值,結果就是字元't'。

    3. 如果有定義,則 char y[4]="321", *py=&y[0],表示式 *(py+2) 的值為'1' 。

  12. 匿名使用者2024-01-15

    *y+2 = 0x35 = '5'

    *z+2) = 0x54 = 't'

    py+2) = 0x31 = '1'

    每天努力學習,不斷進步。

  13. 匿名使用者2024-01-14

    首先,*的運算優先順序大於+,所以先計算*y,在陣列表示式中,變數名稱是第零個陣列元素的起始位址,然後*y標識第零個陣列元素,*y='3',則 *y+2='5'.

    如果定義,則 char z[2][4]=; ,表示式 *(*z+2) 的值為

  14. 匿名使用者2024-01-13

    首先,編譯器對許多操作都具有隱式轉換。

    其次,函式指標指向編譯函式**(機器指令)的第乙個位址。

    那麼,當您使用星號操作指標時,是否需要訪問該命令? 訪問乙個函式的唯一方法就是呼叫它,所以編譯器做預設的處理,不管有沒有星號,都是呼叫函式,編譯器的這種自動決策叫做隱式轉換。 (其他編譯器可能會報告錯誤)。

    ps:盡量不要偷偷看隱式轉換,因為依賴編譯器的自動功能會有安全隱患,因為不同的編譯器隱式轉換是不同的,還是比較顯式和安全的。 因為即使你更新了編譯器版本,你的程式也不會有問題。

相關回答
24個回答2024-03-30

左邊的函式不僅可以用於它前面的 main 函式,還可以用於它前面定義的其他函式。 >>>More

14個回答2024-03-30

<>因為你的格式化控制項是%dspace%dspace,所以在第一種情況下,也應該有1個空格和2個空格,否則直接按回車鍵,回車鍵就存放在空格中,這樣不會結束語句,而是等待輸入。 更正:刪除了第二個空格。

4個回答2024-03-30

函式是否被外部引用不是一成不變的,兩者之間沒有必然的相關性。 此外,如果某個函式被指定為靜態函式,則應在標頭檔案中將其宣告為靜態函式,否則其他人在使用庫時會誤用它。

14個回答2024-03-30

你能說清楚嗎,我不知道你的意思。 是否要在 main 函式中呼叫乙個函式,然後不知道如何定義被呼叫的函式? 如果是這樣的話,我可以告訴你。 >>>More

11個回答2024-03-30

建議先了解MCU是如何執行的。