Я (был), используя файл __ __
и __ __
Макросы для печати диагностических сообщений из моего кода. Это работает довольно хорошо, когда вы используете GCC с помощью Make, файл так же коротко, как вы указали его в командной строке. Я недавно перешел на использование коделита, который использует полностью квалифицированные имена файлов (по крайней мере, под Windows) при строительстве. Внезапно мой диагностический выход почти не читается.
Там есть способ получить только файл компонента имени файла в препроцессоре? Я могу жить с не портативным конкретным решением GCC. (Я буду отвезтиться на простое ___ файл __
Другие случаи.)
Конечно, я могу пройти содержимое __ __
с помощью функции и извлекать только файловый компонент, но операции строки не были чем Я имел в виду для диагностических сообщений, которые не должны изменять поведение времени выполнения ...
Примечание: Я использую имя файла, как он использует GNU. Путь - это сборник имена файлов, а имя файла является либо относительным, либо абсолютным идентификатором файла. Имя файла может быть состоит из компонента каталогов и компонента файла.