相关疑难解决方法(0)

如果变量为NULL,则有条件地设置变量

单步执行a时sqlite3_stmt,我想检查返回值NULL而不是存储它并检查存储的值.

这就是我现在正在做的事情:

char *email = (char *)sqlite3_column_text(statement, 10);
if (email == NULL) email = "";
Run Code Online (Sandbox Code Playgroud)

这里是想什么,我在做,减去双呼叫column:

char *email = ((char *)sqlite3_column_text(statement, 10)) ? (char *)sqlite3_column_text(statement, 10) : "";
Run Code Online (Sandbox Code Playgroud)

有没有办法更简洁地表达第二个表达式?我必须重复做很多这些,所以我正在寻求简洁.

我知道这是控制流的问题,而不是SQLite API本身的问题,但是你有它.我想不出这样做的好方法.

c variable-assignment conditional-operator

2
推荐指数
1
解决办法
105
查看次数