Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
-342 / 1 / 0
Регистрация: 27.12.2025
Сообщений: 29

Неинициализированные указатели

14.04.2026, 17:27. Показов 10670. Ответов 130
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите пожалуйста, если использование неинициализированных указателей в С++ сопряжено с рисками неопределённого поведения и случайного доступа к памяти, то для каких целей в языке оставлена возможность объявления неинициализированных указателей?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.04.2026, 17:27
Ответы с готовыми решениями:

Неинициализированные локальные переменные
Меня интересует как обходить данные ошибки. В чем соль ошибок? Проблема даже не в том что они...

Неинициализированные переменные
пишет типа не инициализированы d1 и d2,хотя они объявлены#include "iostream" using namespace std;...

Неинициализированные локальные переменные warning C4700
// Laboratornaa.cpp: определяет точку входа для консольного приложения. // #include"stdafx.h"...

130
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
17.04.2026, 14:56
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от 000d60 Посмотреть сообщение
    int* i = new int;
    std::cout << *i; // use uninitialized variable
Ну да... На куче указатель разрешает.
Что бы он не указывал хрен на что.
Указывает на неинициализированную переменную.

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
 
int main()
{
    for (int i_n = 0; i_n < 10; ++i_n) {
        unsigned int* i = new unsigned int;
        std::cout << *i << "\n"; // use uninitialized variable
        printf("%p ----- location\n", i);
    }
   std::cout << "Hello World!\n";
    getchar();
}
0
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
17.04.2026, 14:57
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6339 / 3072 / 1054
Регистрация: 01.06.2021
Сообщений: 11,802
17.04.2026, 14:58
Цитата Сообщение от Наталья8 Посмотреть сообщение
Что то тебя видно не было....
захожу всё реже и реже, поскольку форум умирает. Писал на днях в разделе игр и астрономии, но в разделе С++ скучновато стало, одни бессмысленные обсуждения на 100+ постов, причем на темы, которые тут уже тысячу раз обсуждали.
Цитата Сообщение от Наталья8 Посмотреть сообщение
Думаешь они на новой версии более стабильным его сделали?
то, что разрабы кодеблока пишут коды сомнительного качества - это факт. Но если просить что-то, то они пофиксят. За качество не ручаются, но процесс программирования по крайней мере имитируют.
два разраба (пекан и мигель) вместе с Gemini 3 (это не шутка, они прямо признавались, что код берут от ИИ) за неделю смогли исправить мелкий баг, который я нашел
0
Заблокирован
17.04.2026, 15:07
Цитата Сообщение от Royal_X Посмотреть сообщение
два разраба (пекан и мигель) вместе с Gemini 3
Спасибо. Раньше он мне не понравился, а теперь и лопатой на него(C::B) не загонит никто.
Рад что ты с нами.
2
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
17.04.2026, 15:08
Это я располагаю на куче неинициализированный указатель, или хрен?
0
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
17.04.2026, 15:16
Цитата Сообщение от Royal_X Посмотреть сообщение
за неделю смогли исправить мелкий баг, который я нашел
Да молодец...

Добавлено через 4 минуты
Цитата Сообщение от 000d60 Посмотреть сообщение
Раньше он мне не понравился
Ну что то не серьёзное можно накодировать....\
Я даже маленький скриншотер переносил на кодеблок.
0
-342 / 1 / 0
Регистрация: 27.12.2025
Сообщений: 29
17.04.2026, 15:23  [ТС]
[Алексей1153, Ну на все минусы я ложил большой и жирный плюс (вернее два плюса). Хотелось бы заметить, что насильно никто никого высказываться и делится своими сокровенными знаниями не заставляет.
0
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
17.04.2026, 15:24

Вариант с таймаутом что бы ни чего не нажимать.
(Окошко исчезает.)
Вот эту рамку, что тянеться красная, лет пять изобретал.
То есть она была, но хреново. Пилил - пилил...
Сейчас мне нравиться.
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6339 / 3072 / 1054
Регистрация: 01.06.2021
Сообщений: 11,802
17.04.2026, 15:36
ㅤㅤㅤ
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13233 / 6865 / 1827
Регистрация: 18.10.2014
Сообщений: 17,398
17.04.2026, 17:28
Цитата Сообщение от Also what Посмотреть сообщение
Моё видение процессов протекающих при объявлении неинциализированных указателей, ну и переменных до кучи (не претендую на истину в конечной инстанции, пытаюсь разобраться для себя).
При компиляции программы с с вышеуказанными объявлениями компилятор (если в нём отключены оптимизирующие режимы)
Как говорится, хоть кол на голове теши...

Во-первых, это - форум по языку С++. В языке С++ нет понятия "оптимизирующих режимов" и, соответственно, не понятия "включенных" или "отключенных оптимизирующих режимов". Это понятия конкретной реализации. Если конкретная реализация не нарушает требований спецификации языка С++, то все разговоры о поведении этой конкретной реализации ведутся при выкрученных на абсолютный максимум "оптимизирующих режимах". Все остальное не имеет никакого значения.

Цитата Сообщение от Also what Посмотреть сообщение
компилятор
Во-вторых, это - форум по языку С++, а не по некоему "компилятору". Что там происходит в некоем уютненьком компиляторе и его "режимах" - это тема для форума по этому компилятору, да и то лишь в какой-то конкретный момент его биографии. К С++ все это имеет очень мало отношения. Любые поведения конкретного "компилятора" - это лишь сиюминутные и мимолетные закидоны на его пути к реализации спецификации языка С++.
0
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
17.04.2026, 23:57
Цитата Сообщение от Наталья8 Посмотреть сообщение
Это я располагаю на куче неинициализированный указатель
Путаюсь я в этих звёздах ей богу....
0
Нарушитель
10898 / 5832 / 1289
Регистрация: 12.03.2015
Сообщений: 26,920
18.04.2026, 01:01
Цитата Сообщение от Royal_X Посмотреть сообщение
ты почему C::B не обновляешь? Уже ж давно есть версия 25.03.
Есть сборка 25.03 с тёмной темой? Из-за тёмной темы я до сих пор юзаю 20.03.

0
-342 / 1 / 0
Регистрация: 27.12.2025
Сообщений: 29
18.04.2026, 06:37  [ТС]
TheCalligrapher, А в третьих? Огласите весь список пожалуйста.
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6339 / 3072 / 1054
Регистрация: 01.06.2021
Сообщений: 11,802
18.04.2026, 10:09
Verevkin, полноценная темная тема у C::B появилась после коммита https://sourceforge.net/p/codeblocks/code/13777/ от 25 января 2026.
Версия 25.03 вышла раньше, поэтому темную тему ещё не поддерживает.
Как известно, на форуме C::B постоянно публикуют свежие ночные сборки. Например, крайняя такая сборка вышла 9 апреля 2026. Казалось бы, что можно скачать такую сборку и будет там темная тема. Но нет, это не так. Чувак, который собирает ночные кодеблоки, почему-то юзает wxWidgets 3.2, а в сорце C::B прямо написано, что темная тема включается при #if wxCHECK_VERSION(3,3,0), поскольку темная тема появилась в wxWidgets 3.3+. Т.е. хоть ночная сборка собирается из сорцов, которые поддерживают темную тему, но при сборке используется не самый свежий wxWidgets, который предотвращает работу темной темы в C::B. Хотя, понять этого чела можно. На сегодняшний день именно 3.2 является стабильной версией wxWidgets.
Решение состоит в том, чтобы собрать C::B самому из сорцов.
Как видно в https://sourceforge.net/p/code... trunk/src/ , сорцы полностью поддерживают сборку под wxWidgets 3.3. И тогда будет темная тема.
Ну а если лень собирать самостоятельно, то нужно ждать, пока ночные сборки будут под wxWidgets 3.3.
0
Нарушитель
10898 / 5832 / 1289
Регистрация: 12.03.2015
Сообщений: 26,920
18.04.2026, 17:29
Цитата Сообщение от Royal_X Посмотреть сообщение
erevkin, полноценная темная тема у C::B появилась после коммита https://sourceforge.net/p/codeblocks/code/13777/ от 25 января 2026.
Версия 25.03 вышла раньше, поэтому темную тему ещё не поддерживает.
Как известно, на форуме C::B постоянно публикуют свежие ночные сборки. Например, крайняя такая сборка вышла 9 апреля 2026. Казалось бы, что можно скачать такую сборку и будет там темная тема. Но нет, это не так. Чувак, который собирает ночные кодеблоки, почему-то юзает wxWidgets 3.2, а в сорце C::B прямо написано, что темная тема включается при #if wxCHECK_VERSION(3,3,0), поскольку темная тема появилась в wxWidgets 3.3+. Т.е. хоть ночная сборка собирается из сорцов, которые поддерживают темную тему, но при сборке используется не самый свежий wxWidgets, который предотвращает работу темной темы в C::B. Хотя, понять этого чела можно. На сегодняшний день именно 3.2 является стабильной версией wxWidgets.
Решение состоит в том, чтобы собрать C::B самому из сорцов.
Как видно в https://sourceforge.net/p/code... trunk/src/ , сорцы полностью поддерживают сборку под wxWidgets 3.3. И тогда будет темная тема.
Ну а если лень собирать самостоятельно, то нужно ждать, пока ночные сборки будут под wxWidgets 3.3.
Ладно. А есть сборка 25.03 с тёмной темой?
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6339 / 3072 / 1054
Регистрация: 01.06.2021
Сообщений: 11,802
18.04.2026, 18:18
Цитата Сообщение от Verevkin Посмотреть сообщение
А есть сборка 25.03 с тёмной темой?
не думаю, что такая будет. Я же выше написал, что 25.03 вышла раньше, чем коммит r13777, который добавляет поддержку темной темы


1) либо нужно самому собрать из сорцов (но нужно брать не сорцы версии 25.03, а сорцы после коммита r13777 или лучше просто взять крайнюю версию) и собрать C::B на wxWidgets 3.3.
Единственный минус в том, что если сорцы версии 25.03 можно легко скачать из sourceforge, то вот сорцы крайней версии нужно брать из trunk, но разрабы кодеблока используют не Git, а Subversion. После установки Subversion, вводишь такую команду, чтобы скачать самые свежие сорцы C::B.
Code
1
svn checkout https://svn.code.sf.net/p/codeblocks/code/trunk codeblocks-code
Далее, ты сам собираешь C::B, но обязательно выбираешь CodeBlocks_wx33.cbp или CodeBlocks_wx33_64.cbp, чтобы собрать C::B, основанный на wxWidgets 3.3.

2) либо подождать, пока на сайте https://forums.codeblocks.org/... ,20.0.html killerbot выпустит ночную сборку на wxWidgets 3.3. Скорее всего, он это сделает лишь тогда, когда 3.3 станет стабильной версией. Сейчас таковой является 3.2. Т.е. осталось ждать недолго.
0
Нарушитель
10898 / 5832 / 1289
Регистрация: 12.03.2015
Сообщений: 26,920
18.04.2026, 18:32
Цитата Сообщение от Royal_X Посмотреть сообщение
не думаю, что такая будет. Я же выше написал, что...
0
Нарушитель
10898 / 5832 / 1289
Регистрация: 12.03.2015
Сообщений: 26,920
18.04.2026, 18:36
Цитата Сообщение от Royal_X Посмотреть сообщение
Далее, ты сам собираешь C::B
Ну чо ты усираешься-то? На мой скромный вопрос можно было ответить "да" или "нет". Во у тебя энергии и свободного времени сколько - всё это писать. Вместо словоблудия лучше бы взял, да и собрал.


и собрать тёмный CodeBlocks.
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6339 / 3072 / 1054
Регистрация: 01.06.2021
Сообщений: 11,802
18.04.2026, 18:45
Цитата Сообщение от Verevkin Посмотреть сообщение
Во у тебя энергии и свободного времени сколько - всё это писать. Вместо словоблудия лучше бы взял, да и собрал.
Мог бы собрать, но принципиально не буду. Кто тёмный CodeBlocks не собирал, тот жизни не знал. Этот путь ты должен пройти сам.
0
Нарушитель
10898 / 5832 / 1289
Регистрация: 12.03.2015
Сообщений: 26,920
18.04.2026, 18:53
Цитата Сообщение от Royal_X Посмотреть сообщение
Этот путь ты должен пройти сам.


Штоп делать лабы для студентов-балбесов, мне 20.03 с ушами хватит. А работаю я на Delphi 13.1 (и неплохо зарабатываю), в нём тёмы "искаропки" есть.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.04.2026, 18:53

Ошибка, указывающая на неинициализированные переменные
#include &lt;iostream&gt; #include &lt;Windows.h&gt; using namespace std; int main() { setlocale(0, &quot;&quot;);...

Ошибка: неинициализированные переменные
Требовалось оформить класс ORDER, ошибка на 103-ей строке про неинициализированные переменные,...

Неинициализированные переменные
Здравствуйте. Возникла проблема с инициализацией переменных и конструкторов производного класса,...

Где и как могут применяться неинициализированные массивы?
Хотелось бы узнать где и как могут применяться неинициализированные массивы.

Указатели и указатели на указатели, а также типы данных
Недавно начал изучать Си, перешел с Delphi. Много непонятного и пока процесс идет медленно....


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

Или воспользуйтесь поиском по форуму:
120
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru