В Си макро магии для строк подвезли
https://github.com/skullchap/chadstr
int table = 13;
int id = 37;
str test1 = str("SELECT * FROM ", table, " where person_id ", id);
str test2 = str(test1); //copies test1 to test2
str test3 = str(test2, test1); // returns concat of test2 and test1
test2 = test1; // acceptable, but wrong since test2 now points to test1 not copies it.
str(*test1); // returns const char* to use in printf like functions
Ex: puts(str(*test1)); // prints test1
chadstr test1 = str("pineapple");
chadstr test1range = str((range)(test1, 3,6)); // neap
Судя по всему оно умеет интерполяцию строк (в тч и конкатенацию) а так же виртуальные ранжи. В исходном коде есть зачатки сборщика мусора.
Исходный код с кучей макро магии https://github.com/skullchap/chadstr/blob/master/chadstr.h.