Jan*_*roň 1 c variables parameter-passing
我尝试使用va_arg来检索函数中的下一个参数。它适用于所有类型(包括 char*),但 char:
void test1(char t,...) {
va_list args;
va_start(args, t);
if(t=='c') Serial.println(va_arg(args, char));
else if(t=='n') Serial.println(va_arg(args, int));
va_end(args);
}
Run Code Online (Sandbox Code Playgroud)
测试:
int n = 42;
char c = '?';
test1('n', n); // prints 42
test1('c', c); // prints nothing!
Run Code Online (Sandbox Code Playgroud)
你能验证/解释吗?代码在 Arduino Uno 上运行,波特率为 9600。
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |