Нет, препроцессор C рассматривает строковые литералы как один токен, и поэтому он не может выполнять никаких подобных манипуляций.
То, что вы запрашиваете, должно быть сделано в реальном коде C.Если вы беспокоитесь о производительности во время выполнения и хотите делегировать эту фиксированную задачу во время компиляции, современные оптимизирующие компиляторы должны успешно работать с таким кодом - они могут развернуть любые циклы и предварительно вычислить любые фиксированные выражения, принимая при этом размер кода и использование кэша ЦП.шаблонов, о которых препроцессор понятия не имеет.
С другой стороны, вы можете захотеть, чтобы ваш код включал такой модифицированный строковый литерал, но вам не нужен или не нужен оригинал - например, вы хотите иметьзапутанный текст, который ваша программа будет декодировать, и вы не хотите иметь исходные строки в вашем исполняемом файле.В этом случае вы можете использовать некоторые сценарии системы сборки, чтобы сделать это, например, с помощью другой программы на C для создания измененных строк и определения их как макросов в командной строке компилятора C для вашей фактической программы.