簡體   English   中英

為printf定義一個宏是錯誤的嗎?

[英]Is it wrong to define a macro for printf?

我是出於一般知識目的而要求這個。

我可以在頭文件中定義printf並使用pf在整個程序中替換printf嗎?

基於任何標准都是錯的嗎?

#include<stdio.h>
#define pf printf   //printf defined here

int main(){
    int x=10;
    pf("x=%d",x);  //pf is used instead of printf
}

PS:學習新事物只是為了在課堂上取得成功;)

這是完全合法的 - 而且非常糟糕的風格。

編譯器將用printf替換標識符pf的每次出現。

但是每次使用它時都要完整地編寫printf ,這使得您的代碼對於讀者來說更具可讀性。 如果我看到對printf的調用,我確切地知道它意味着什么。 如果我看到一個名為pf東西的調用,我的第一個假設就是你有一個名稱的函數,我需要找出它的作用。 在我能理解調用的含義之前,我必須先尋找你的宏定義。 它比使用宏保存的4次擊鍵浪費的時間要多得多。

暫無
暫無

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

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