Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco
0 Пользователей и 1 Гость просматривают эту тему.
Да извиняюсь, действительно функция возвращает 1 значение, просто я хотел сказать что она может иметь несколько return. И я не могу понять почему не написать бы такой компилятор , произвести модификации который позволял бы возвращать например 2 числа например так ruturn a; return b а они бы последовательно шли б в ячейках памяти. В чем сложность?
А ешё есть указатели. Думаю это то, чего ТС не хватает. По теме нечего прогуливать лекции.
Цитата: olegRomanuk от 11 Апреля 2014, 01:42:27То есть вы хотите сказать что int * n1=&a; // Да: *n1 == &a, то есть n1 содержит адрес переменной "а" в стеке, но вот значение "а" может уже быть изменено.
То есть вы хотите сказать что int * n1=&a; //
olegRomanuk, ты главное не удаляй объект, а компилятор его удалить не додумается.
void main(){ int a = *aa(); stdout.printf(a.to_string());}int* aa(){ var a = 10; return &a;}
Цитата: alsoijw от 13 Апреля 2014, 20:55:12olegRomanuk, ты главное не удаляй объект, а компилятор его удалить не додумается.думаю додумается удалить и меня не спросит даже что я думаю по этому поводу.
void main(){ int i = 42; int* i_ptr = &i; int ii = (int)i_ptr; int* jj = (int*)ii; int j = *jj; stdout.printf(j.to_string()+"\n");}
alsoijw, но дело-то в плюсах. Крайне нежелательно возвращать адрес в стеке, который меньше, чем в rsp, ибо данные могут быть перезаписаны вызовом функции и это приведет к трудно предсказуемому, да и в целом, неверному результату.
Шикарно только интересно как локальная переменная была жива после завершения функции фу, если я не ошибаюсь после она же должна быть типа уничтожена.
Цитата: olegRomanuk от 11 Апреля 2014, 00:10:15Шикарно только интересно как локальная переменная была жива после завершения функции фу, если я не ошибаюсь после она же должна быть типа уничтожена.Что такое по твоему "она же должна быть типа уничтожена"? Что должно быть с указателем на "типа уничтоженную" переменную?Указатели сами по себе не обнуляются и не знают, что творится с областью памяти, на которую они указывают.
Указатель будет. Место - нет. Даже если обнулить указатель, то кто сказал что нужно обнулить объект?
Страница сгенерирована за 0.043 секунд. Запросов: 25.