Я знаю, что, например, '5'
является литеральным типом char
, но является 5 * 5
буквально? Это выражение, однако оно имеет фиксированное значение.Является ли 5 * 5 буквальным или просто выражением?
ответ
Я не думаю, что вы можете называть это буквальным. Возможно, некоторые компиляторы будут относиться к нему так же, как к литеральному, см. Комментарий о том, какой язык вы используете.
Как описано в Java Language Specification §15.28, это особый случай выражения, называемый «константа постоянной времени компиляции». Это не литерал.
В байтовом коде нельзя указать, было ли это написано как '5 * 5' или' 25' +1. –
«Literal» - это грамматический термин, а не семантический. Это основной строительный блок, который обозначает постоянное значение.
Хотя по спецификации 5 * 5
и 25
означает точно такое же, грамматически первое представляет собой двоичное выражение, включающее два литерала и оператор, а второе - буквальное.
Я не уверен, но разве эти термины не работают?
- при использовании какого-то значения, чтобы определить точно значение переменного «в прямого пути» следует назвать «буквальным»
var num =5; var stringLabel = "someText";
т.д. - при использовании некоторой формулы или предписания, его следует называть «выражением»
var result = 5*5; var res2 = a*x;
Но курс- в результате что также постоянная си он также может быть буквальным на самом деле ..
Вот как получить его, по крайней мере мне ..
Это просто о сроках - также, как и в java, есть методы, «языки C» - это функции и т. д. - в значениях его тоже одни и те же вещи, поэтому зависит только от того, что вы будете терпеть вообще: D
- 1. Является ли (int &&) 5 интегральным постоянным выражением?
- 2. , который быстрее 5 + 5 + 5 + 5 + 5 или 5 * 5?
- 3. Является ли XCode 5?
- 4. Как проверить, является ли строка выражением или просто строкой?
- 5. Не является ли буквальным типом?
- 6. Является ли + 5 допустимым выражением в C, где a - массив?
- 7. Является ли Plone 5 многоязычным?
- 8. Является ли DocumentBuilderFactory потокобезопасным в Java 5+?
- 9. Почему ++ = 5 является ошибкой?
- 10. Является ли уже спецификацией HTML 5?
- 11. Является ли матч Scala выражением или нет?
- 12. Python: как определить, является ли строка выражением или выражением?
- 13. Laravel 5 Event - Является ли это посредником или наблюдателем?
- 14. Является ли это правильной моделью Laravel 5?
- 15. Является ли PHP 5 объектно-ориентированным?
- 16. Как проверить, является ли номер мощностью 5
- 17. является ли Adobe AIR ограниченным Xcode 5?
- 18. Является ли php 'include' функцией или выражением?
- 19. Является ли буквальным конструктором значения специальной формы?
- 20. Является ли LINQ быстрее или просто удобнее?
- 21. Является ли «корневым типом» или просто типом?
- 22. Является ли моя интерпретация правильной относительно n3797 8.5.3/5?
- 23. Hibernate 5: SessionFactory является нулевым
- 24. Возможно ли в git просто нажать 4 из 5 коммитов?
- 25. Я просто Cant Развертывание приложения Laravel 5
- 26. Python: True или 5 против 5 или True
- 27. Выходит ли ASP.NET MVC 5 или нет?
- 28. Как сделать единство 5.x suport C# 5 или 6?
- 29. Каково значение (list 'quote' 5) = '' 5, а не '(цитата 5) или' ('' 5)?
- 30. Laravel 5 Отметка является NULL
Вы можете указать какой язык вы используете. –
И, возможно, этот парсер/компилятор вы используете. Интеллектуальный должен автоматически преобразовывать '5 * 5' в' 25' при работе с математическими операциями. –
@AndrewGrimm Я предполагаю, что это своего рода очевидная его Java, рассматривающая тег #java. – Craig