簡體   English   中英

在C示例中'ap'代表什么?

[英]What does 'ap' stand for in C examples?

例如,在參考中:

type va_arg (va_list ap, type)

ap代表參數指針嗎? 別的什么?

這實際上是一個容易回答的問題。

ap代表參數指針

來自C編程語言 ,第二版,Brian W. Kernighan和Dennis M. Ritchie:

7.3可變長度參數列表

[...]類型va_list用於聲明一個將依次引用每個參數的變量; 在minprintf中,這個變量叫做ap,用於“參數指針”

ap代表Argument Pointer 實際上,它有時縮寫為arg_ptr

type va_arg(
   va_list arg_ptr,
   type 
);
  • type - 要檢索的參數類型。
  • arg_ptr - 指向參數列表的指針。

這實際上是一個難以回答的問題。

ouah的回答 ; K&R2中提到了短語“參數指針”。

<stdarg.h>頭是在1989年由ANSI C標准引入的arg_ptr C Rationale沒有顯示任何示例,也沒有使用名稱aparg_ptr 標准本身(最新草案在這里使用名稱ap在示例中,但不解釋它。

我無法找到名稱ap的解釋。 它最初代表“參數指針”似乎是合理的,但同樣重要的是要注意類型va_list不是(必然)指針類型。 例如,在gcc中,它被定義為__builtin_va_list ,這是一種由編譯器直接實現的類型。 (它在我的系統上恰好有24個字節的大小,但這不是特別有用的信息)。

底線:名稱apva_list對象的常規名稱,因為我們不需要關心。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM