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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
лендер
46 / 46 / 2
Регистрация: 12.01.2010
Сообщений: 183
#1

что будет? - C++

14.05.2010, 23:16. Просмотров 354. Ответов 9
Метки нет (Все метки)

что случится если запустить такой код

C++
1
2
3
4
5
6
7
8
 
 long int *p, i = 0;
 
     while(1)
     {
       i++;
       p[i] ;
     }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2010, 23:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос что будет? (C++):

Что будет? - C++
Что будет если пару раз вызвать вот такую штуку? mLastTrack->sampleTable = new SampleTable(mDataSource); Спасибо!

Что будет выведено на экран? - C++
Увидел только что такую вот интересную задачку на одном форуме #include <iostream> struct aaa { aaa(int i) { ...

что будет выведено на экран - C++
7)Баллов: 1 Что будет выведено на экран в результате работы следующего программного фрагмента: char c= 'a' ; cout << ( int )c;

что быстрее работать будет?? - C++
Здравствуйте) проблема такая. есть функция, возвращаемое значение которой расчитывается по разным формулам, выбор которых зависит от...

Что будет выведено на экран? - C++
здравствуйте уважаемые программисты, вопрос следующий. что будет выведено на экран? #include <stdio.h> #define A(a) # a...

Что будет на выходе, не компилирует? - C++
#include <stdio.h> void p(int x) { if(x) { p(x-1); printf("x=%d\n",x); }) void main() { p(4); ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
oxotnik
1589 / 1066 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
14.05.2010, 23:22 #2
ниче страшного не будет
Psixodelik
40 / 39 / 2
Регистрация: 27.11.2009
Сообщений: 100
14.05.2010, 23:25 #3
Комп задумается? xD xD
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
14.05.2010, 23:28 #4
лендер, вечный цикл.
лендер
46 / 46 / 2
Регистрация: 12.01.2010
Сообщений: 183
14.05.2010, 23:29  [ТС] #5
ОЙ нетак написал, извиняюсь
C++
1
2
3
4
5
6
7
 long int *p, i = 0;
 
     while(1)
     {
       i++;
       p[i] = 0 ;
     }
M128K145
Эксперт С++
8286 / 3505 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
14.05.2010, 23:30 #6
лендер, ваша программа со временем выйдет за пределы своего адресного пространства и программа аварийно завершится
лендер
46 / 46 / 2
Регистрация: 12.01.2010
Сообщений: 183
14.05.2010, 23:33  [ТС] #7
тоисть в памяти я нигде не нагажу?
Psixodelik
40 / 39 / 2
Регистрация: 27.11.2009
Сообщений: 100
14.05.2010, 23:35 #8
А можно вопрос? Наверно я туплю или проспал лекции по указателям....но почему переменная объявлена как *p, а в цикле она уже используется как массив? И кстати M128K145, посмотрел в дебаге, аварийное завершение будет сразу, как только дойдёт до p[i] = 0 ;
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
14.05.2010, 23:37 #9
Цитата Сообщение от лендер Посмотреть сообщение
тоисть в памяти я нигде не нагажу?
Нет. Во-первых каждый процесс исполняется в своем адресном пространстве, а во-вторых ОС не даст тебе этого сделать и при попытке доступа с не зарезервированной области памяти выдаст исключение.
easybudda
Модератор
Эксперт CЭксперт С++
9530 / 5523 / 932
Регистрация: 25.07.2009
Сообщений: 10,608
15.05.2010, 01:51 #10
Цитата Сообщение от Psixodelik Посмотреть сообщение
посмотрел в дебаге, аварийное завершение будет сразу, как только дойдёт до p[i] = 0 ;
видимо, по тому, что изначально p ничем не инициализирован...
C
1
2
3
4
5
6
7
8
long int *p, i = 0;
 
     p = &i; 
     while(1)
     {
       i++;
       p[i] = 0 ;
     }
вот так должно веселее быть...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2010, 01:51
Привет! Вот еще темы с ответами:

0 умножить на что-угодно не всегда будет 0? - C++
Прога неправильно считает в цикле произведение элементов массива! Есть массив интов num мощностью int const size. В нем записано некое...

Что будет вызвано в результате вызова f()? - C++
Дан код со следующим определением класса A: struct A { void f() {/* метод 1*/} void f(int x) {/* метод 2*/} void...

Что будет если так сделать? - C++
Всем привет! Что будет если применить такую конструкцию int global; void Test(const int& a) { global = a; } То...

Что будет в переменных в результате выполнения кода? - C++
программный код: int z=6, x=-2, y=4; z+=y=5+x--; Что будет в переменных в результате выполнения?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
15.05.2010, 01:51
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru