マクロを使用して c で複数の文字列を連結したいのですが、私がしたことは次のとおりです。
#define PROCESS_NAME "process_a"
#ifdef WITH_PID_FILE
#define PROCESS_PID "-p /tmp/process_a.pid"
#else
#define PROCESS_PID ""
#endif
#define PROCESS_CMD PROCESS_NAME" -i %s -a %s "PROCESS_PID" &"
しかし、それは本当にひどいようです、何か良い方法はありますか?
私の目標は、snprintf で PROCESS_CMD を使用し、システム コールを実行することです。