В большинстве языков это не является двусмысленным: первая косая черта и звездочка потребляются для создания токена «начало многострочного комментария». За ним следует косая черта, которая является простым «контентом» в комментарии, и, наконец, последние два символа являются маркером «конец многострочного комментария».
Поскольку используются первые 2 символа, первая звездочка также не может использоваться для создания маркера конца комментария. Я только что заметил, что он может выдать второй токен «начала комментария» ... упс, это может быть проблемой, в зависимости от количества контекста, доступного для синтаксического анализатора.
Я говорю здесь о токенах, предполагая обработку комментариев на уровне парсера. Но то же самое относится и к лексеру, согласно которому базовое правило должно начинаться с '/*'
, а не останавливаться до тех пор, пока не будет найдено '*/'
. По сути, обработка всего комментария на уровне лексера не будет смущена вторым «началом комментария».