用 C 中的条件语句打印多个格式化的字符串

Par*_*rco 1 c string-formatting conditional-operator

例如,有没有办法仅基于一个条件在 C 中打印多个字符串

int main(int argc, char const *argv[]) {

  printf("%s %s\n", condition ? "string1","string2" : "string3","string4");

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

如果条件为真,那么我想要

string1 string2
Run Code Online (Sandbox Code Playgroud)

作为输出但是当我这样做时,它不是我得到的

Dan*_*_ds 5

我认为你需要:

printf("%s %s\n", condition ? "string1" : "string3", condition ? "string2" : "string4");
Run Code Online (Sandbox Code Playgroud)

  • @Parco 如果有多个条件,也许您可​​以使用(指向)字符串的数组,然后使用`arrStrings[enumValue]` 为例。 (2认同)