在 c 語言中,%r 轉換說明符用于:格式化輸出:打印指針變量的地址,結果通常以十六進制格式顯示。格式化輸入:讀取并存儲輸入的地址到指針變量中。
%r 在 C 語言中是格式化輸出的轉換說明符
%r 是 C 語言中 printf() 和 scanf() 函數中常用的格式化輸出和輸入轉換說明符。它用于打印或讀取一個指針的值。
格式化輸出(printf() 函數):
用法: printf(“%r”, &variable);
效果:打印變量 variable 的地址。
格式化輸入(scanf() 函數):
用法: scanf(“%r”, &variable);
效果:從輸入中讀取一個地址并存儲在變量 variable 中。
注意:
%r 轉換說明符僅適用于指針變量。
打印指針變量時,輸出結果會因編譯器和平臺而異。通常會以十六進制格式打印地址。
讀取指針變量時,輸入必須是有效的內存地址。否則,讀取操作會失敗。
示例:
<code class="c">int main() { int *ptr = malloc(sizeof(int)); *ptr = 10; printf("Pointer value: %r\n", ptr); // 輸出指針地址 scanf("%r", &ptr); // 從輸入中讀取指針地址 printf("Dereferenced pointer value: %d\n", *ptr); // 輸出通過指針訪問的值 return 0; }</code>
登錄后復制