Где хранятся временные объекты-константы? Знаю, что у констант, таких что не объявленных, то адреса нет, кроме строковых литералов, например:
printf("%d", 5); // Где хранится константа? В регистре процессора? Адреса у нее нет.
int value = 10; // Аналогично
printf("%s", "I am just a string"); // Адрес у строки есть, но где она хранится? На стеке?
Если можно, то простым языком) Спасибо!
mov eax, 5(если это x86) – Mike Jun 26 '20 at 20:38int value = 10;это не константа, а переменная, имеющая начальное значение 10. В зависимости от того что это за переменная, она может быть в сегменте данных программы, внутри исполнимого файла, может помещаться в стек в момент выполнения (опять же из машинного кода самой инструкции) или вообще использоваться непосредственно в инструкции где идет дальнейшая работа с ней – Mike Jun 26 '20 at 20:43