簡體   English   中英

編寫一個宏來讀取不同數據類型的變量

[英]Writing a macro that reads variables of different data types

我有以下任務:“編寫一個宏VARIN(a,fmt)這樣一個宏調用

VARIN(x,lf) is equivalent to
printf("\n x = "); scanf("%lf",&x);
and VARIN(i,d) is equivalent to
printf("\n i = "); scanf("%d",&i);

其中 x 和 i 分別是一些 double 和 int 類型的程序變量。”

我不知所措。 嘗試了幾個小時,仍然無處可去。 如何編寫從不同數據類型讀取變量的函數或宏?

假設您希望通過示例使用 C。 你想要這樣的東西:

#define VARIN( a, fmt ) printf( "\n " #a " = " ); scanf( "%" #fmt, &a );

#a將變量字符串化為文本。

int boo() {
    double x;
    VARIN( x, ld );
    char str[10];
    VARIN( str, s );
}

應該可以像上面一樣使用。

暫無
暫無

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

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