![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
void* |
![]() ![]()
Сообщение
#1
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
Вот собственно предлагаю скидывать сюда интересные задачи по С/С++. Желательно не слишком простые и не требующие написания программы, а только касательно понимания кода и знания стандартов. Начну сам:
1)Каков результат вычисления следующего кода?
а) 4 б) 5 в) 6 г) 7 д) Любое число ввиду неопределенности данной конструкции 2) Почему в C нельзя выводить текстовую информацию таким способом?
3) Что делает следующий С++ код? (Matt Marcus)
4)Выбрать результат выполнения программы.
A. AA B. A C. Пустой экран D. Программа не скомпилируется E. Программа не запустится F. Свой вариант (написать в комментариях) Сообщение отредактировал void* - 10.2.2009, 22:12 |
|
|
Sami |
![]()
Сообщение
#2
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 28.4.2008 Пользователь №: 160 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
1) Определенно д)
2) А вот почему? незнаю. сам так делал. Можно предположить только из-за переполнения буфера. Ибо лучший вариант будет так:
3) А ни чего код ни делает, template без класса-аргументов. Скорее компилятор начнет ругатся. 4) Вариант D) однозначно. Так как доступ к конструктору закрыт. |
|
|
Tonal |
![]()
Сообщение
#3
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: ![]() ![]() ![]() |
В задаче 3 нужно таки использование.
Кроме того, возможны реализации С++ где sizeof char == sizeof int и в этом случае value будет всегда 1. ![]() |
|
|
void* |
![]()
Сообщение
#4
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
вроде все правильно, насчет 3-его сам еще не думал
![]() 1) тут все элементарно, undefined behaviour, т.к. нельзя больше одного раза изменять одну и ту же переменную в одной точке следования 2) опасность кроется в потенциальном наличии кусков типа %s в строке что приведет к ошибке 3) еще не разбирался 4) самая легкая задачка, естественно D |
|
|
Novak |
![]()
Сообщение
#5
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 319 Регистрация: 15.3.2008 Из: Замкадыш Пользователь №: 121 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
1)Каков результат вычисления следующего кода? Нормального варианта ответа в предложенных нет. По сути результат будет зависеть от конкретной реализации компилятора, в какой последовательности он будет разрешать т.н. undefined behaviour. Но это неопределённое поведение не касается самого исполнения программы, просто в стандарте не задан порядок обработки такой ситуации, и те, кто реализуют компиляторы, могут на своё усмотрение эту ситуацию разрешить. Потому говорить, что будет возвращено любое число также неверно, как и полагать какой-то конкретный результат. Сообщение отредактировал Novak - 19.2.2009, 16:23 |
|
|
kuler |
![]()
Сообщение
#6
|
![]() Танцор диско ![]() ![]() ![]() Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: ![]() ![]() ![]() |
чему будет равно z?
int z = 1. / 3 - 1; |
|
|
AD |
![]()
Сообщение
#7
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
void* |
![]()
Сообщение
#8
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
kuler |
![]()
Сообщение
#9
|
![]() Танцор диско ![]() ![]() ![]() Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: ![]() ![]() ![]() |
что и требовалось доказать
|
|
|
void* |
![]()
Сообщение
#10
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
так все-таки будет -1?
|
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 19.2.2025, 2:11 |