Форум программистов, компьютерный форум CyberForum.ru

Почему адреса одинаковые? - C++

Восстановить пароль Регистрация
 
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
04.12.2013, 11:48     Почему адреса одинаковые? #1
Обьясните пожалуйста код, почему адреса одинаковые?
C++
#include <iostream>
using namespace std;
 
int main()
{
    char *s = (char *)"text";
 
    cout << &"text" << endl;
    cout << (void*)&s[0] << endl ;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
04.12.2013, 11:57     Почему адреса одинаковые? #2
Компилятор в состоянии определить, что достаточно поместить в сегмент константных данных только одну строку и не дублировать ее второй такой же.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
04.12.2013, 11:59  [ТС]     Почему адреса одинаковые? #3
У меня нет под рукой компилятора, какие выдает результаты при разных оптимизациях?
castaway
Эксперт С++
4842 / 2981 / 367
Регистрация: 10.11.2010
Сообщений: 11,013
Записей в блоге: 10
Завершенные тесты: 1
04.12.2013, 12:04     Почему адреса одинаковые? #4
Это оптимизация компилятора.
Yandex
Объявления
04.12.2013, 12:04     Почему адреса одинаковые?
Ответ Создать тему
Опции темы

Текущее время: 10:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru