|
1 / 1 / 0
Регистрация: 26.03.2017
Сообщений: 40
|
|
Суффиксы числовых литералов26.03.2017, 19:59. Показов 8777. Ответов 12
Метки нет (Все метки)
в учебнике видел вот такую строчку:
const float PI = 3.14159F; или вот такую: longvar = 7678L; вопрос такой: зачем в конце цифр ставить букву соответствующую первой букве используемого типа данных? Спасибо!
0
|
|
| 26.03.2017, 19:59 | |
|
Ответы с готовыми решениями:
12
Суффиксы в переменных |
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 26.03.2017, 20:26 | |
|
Потому что в первом случае без F будет double, которая приведётся к float, а во втором, без L, будет int, которая приведётся к longvar.
Добавлено через 2 минуты А ныне имеем float и long без приведений.
1
|
|
|
Заблокирован
|
|
| 26.03.2017, 20:39 | |
|
1
|
|
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 26.03.2017, 21:09 | |
|
Компилятором.
Я не могу сказать о моменте времени абсолютно ничего. Полагаю, всё зависит от их внутренних оптимизаций. Добавлено через 11 минут Как бы процессы различны: без суффиксов - создаётся prvalue типа double/int, которая приводится к float/long. Это обозначает, что происходит лишнее преобразование, которого можно избежать. В зависимости от настроек оптимизаций, может этого и не происходить, но именно из-за существования оптимизаций тип числа вида 1234 воспримется как int, а тип числа 12.33 как double. Чтобы скопировать что-то в long, нужно создать long, поэтому пройдёт второе преобразование, как и с double-float. С этим легко согласиться. Компилятор компилятору рознь, поэтому здесь не всё прям однозначно, но сам такой процесс в некоторых компиляторах случается. Я ни доказать этого не могу, ни сказать, где это я вычитал. Читал о приведениях типа, запомнил.
1
|
|
|
Заблокирован
|
||
| 26.03.2017, 21:11 | ||
|
1
|
||
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 26.03.2017, 21:30 | |
|
В программе нет. Вне коробки программы, но и вне нашего взора они должны быть.
prvalue создавать точно также не нужно, когда пишем int i = 100, ибо якобы класть его, этот prvalue, тупо некуда. (Сарказм) Программы будут одинаковы, но это всё следствие неявных приведений prvalue. Добавлено через 1 минуту В случае с суффиксами для prvalue явно задаётся тип. В случае без суффиксов тип prvalue выводится компилятором. Добавлено через 2 минуты Да и ладно. Спорить я не буду. Я тихо подожду других людей. Буду наблюдателем.
1
|
|
|
Заблокирован
|
|
| 26.03.2017, 21:33 | |
.
1
|
|
|
1 / 1 / 0
Регистрация: 26.03.2017
Сообщений: 40
|
|
| 26.03.2017, 22:22 [ТС] | |
|
так в итоге что???
зачем после инициализации переменных ставить первую букву ее типа данных??? без этих букв все прекрасно работает) просто в учебнике они повсюду) вот и возник вопрос)
0
|
|
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 26.03.2017, 22:25 | |
|
Не ставьте. Вы ничего не потеряете.
Добавлено через 1 минуту Но иногда имеет смысл говорить в каком учебнике, потому что часто недоглядев спрашиваем. А потом удивляемся, что всё в учебнике написано было.
1
|
|
|
Заблокирован
|
|||
| 26.03.2017, 22:53 | |||
|
1
|
|||
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 26.03.2017, 23:10 | |
Сообщение было отмечено cvetkof как решение
Решение
В некоторых случаях компилятор сам выкинет эти суффиксы. Так что особо заморачиваться смысла нет. Принимайте это как желание автора подчеркнуть тип данных, чтобы его читатели на это посмотрели, чтобы подумали, чтобы задумались наконец, что тип данных имеет важное значение.
1
|
|
|
1 / 1 / 0
Регистрация: 26.03.2017
Сообщений: 40
|
|
| 27.03.2017, 17:38 [ТС] | |
|
Спасибо!
0
|
|
|
|
|
| 27.03.2017, 20:29 | |
|
Чисто на всякий случай. С суффиксом и без суффикса можно словить разное поведение
U, L, F в константах Добавлено через 52 секунды И ещё тут: U, L, F в константах
1
|
|
| 27.03.2017, 20:29 | |
|
Помогаю со студенческими работами здесь
13
dns-суффиксы Суффиксы ссылок
Для чего нужны суффиксы? Использование литералов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|