Я думаю, что использование ведущего "k" связано с тем, что все языки произносят его как жесткий согласный и, таким образом, оно напоминает людям о английском произношении "constant": -)
Никакие зарезервированные слова не начинаются с k, так что это проще для поиска.
В качестве альтернативы, с графической точки зрения, в качестве ведущего символа он предоставляет очень четкий флаг перед остальной частью имени. Начальная буква «с» менее очевидна и может использоваться для обозначения ролей (например, в венгерской нотации) или классов (если используется язык без учета регистра).
MY_CONSTANT довольно хорошо согласован для констант на основе макросов. Иногда важно знать, что константа определяется макросом, например, что подразумевает, что она основана на литералах и, следовательно, на ограниченном диапазоне типов данных, а также определяется в глобальной области и, следовательно, (как указывал Майкл Берр) out) переопределяет любые локальные константы пространства имен.