Warunkowo ustaw zmienną, jeśli jest NULL
Podczas przechodzenia przezsqlite3_stmt
, Chciałbym sprawdzić przeciwko zwrotnej wartościNULL
zamiast go przechowywać i sprawdzać pod względem przechowywanej wartości.
Oto co robię teraz:
char *email = (char *)sqlite3_column_text(statement, 10);
if (email == NULL) email = "";
A oto co bym zrobiłlubić robić, pomijając podwójne wezwanie docolumn
:
char *email = ((char *)sqlite3_column_text(statement, 10)) ? (char *)sqlite3_column_text(statement, 10) : "";
Czy jest jakiś sposób, aby wyrazić drugie wyrażenie bardziej zwięźle? Muszę robić wiele z nich wielokrotnie, więc szukam zwięzłości.
Wiem, że jest to problem z przepływem sterowania, a nie z samym interfejsem API SQLite, ale masz go. Nie mogę wymyślić dobrego sposobu, aby to zrobić.