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

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

14.04.2026, 17:27. Показов 9128. Ответов 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
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,231
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
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,231
17.04.2026, 14:57
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,562
17.04.2026, 14:58
Цитата Сообщение от Наталья8 Посмотреть сообщение
Что то тебя видно не было....
захожу всё реже и реже, поскольку форум умирает. Писал на днях в разделе игр и астрономии, но в разделе С++ скучновато стало, одни бессмысленные обсуждения на 100+ постов, причем на темы, которые тут уже тысячу раз обсуждали.
Цитата Сообщение от Наталья8 Посмотреть сообщение
Думаешь они на новой версии более стабильным его сделали?
то, что разрабы кодеблока пишут коды сомнительного качества - это факт. Но если просить что-то, то они пофиксят. За качество не ручаются, но процесс программирования по крайней мере имитируют.
два разраба (пекан и мигель) вместе с Gemini 3 (это не шутка, они прямо признавались, что код берут от ИИ) за неделю смогли исправить мелкий баг, который я нашел
0
Заблокирован
17.04.2026, 15:07
Цитата Сообщение от Royal_X Посмотреть сообщение
два разраба (пекан и мигель) вместе с Gemini 3
Спасибо. Раньше он мне не понравился, а теперь и лопатой на него(C::B) не загонит никто.
Рад что ты с нами.
2
 Аватар для Наталья8
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,231
17.04.2026, 15:08
Это я располагаю на куче неинициализированный указатель, или хрен?
0
 Аватар для Наталья8
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,231
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
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,231
17.04.2026, 15:24

Вариант с таймаутом что бы ни чего не нажимать.
(Окошко исчезает.)
Вот эту рамку, что тянеться красная, лет пять изобретал.
То есть она была, но хреново. Пилил - пилил...
Сейчас мне нравиться.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,562
17.04.2026, 15:36
ㅤㅤㅤ
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13210 / 6843 / 1824
Регистрация: 18.10.2014
Сообщений: 17,308
17.04.2026, 17:28
Цитата Сообщение от Also what Посмотреть сообщение
Моё видение процессов протекающих при объявлении неинциализированных указателей, ну и переменных до кучи (не претендую на истину в конечной инстанции, пытаюсь разобраться для себя).
При компиляции программы с с вышеуказанными объявлениями компилятор (если в нём отключены оптимизирующие режимы)
Как говорится, хоть кол на голове теши...

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

Цитата Сообщение от Also what Посмотреть сообщение
компилятор
Во-вторых, это - форум по языку С++, а не по некоему "компилятору". Что там происходит в некоем уютненьком компиляторе и его "режимах" - это тема для форума по этому компилятору, да и то лишь в какой-то конкретный момент его биографии. К С++ все это имеет очень мало отношения. Любые поведения конкретного "компилятора" - это лишь сиюминутные и мимолетные закидоны на его пути к реализации спецификации языка С++.
0
 Аватар для Наталья8
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,231
17.04.2026, 23:57
Цитата Сообщение от Наталья8 Посмотреть сообщение
Это я располагаю на куче неинициализированный указатель
Путаюсь я в этих звёздах ей богу....
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
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
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,562
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
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
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
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,562
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
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
18.04.2026, 18:32
Цитата Сообщение от Royal_X Посмотреть сообщение
не думаю, что такая будет. Я же выше написал, что...
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
18.04.2026, 18:36
Цитата Сообщение от Royal_X Посмотреть сообщение
Далее, ты сам собираешь C::B
Ну чо ты усираешься-то? На мой скромный вопрос можно было ответить "да" или "нет". Во у тебя энергии и свободного времени сколько - всё это писать. Вместо словоблудия лучше бы взял, да и собрал.


и собрать тёмный CodeBlocks.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,562
18.04.2026, 18:45
Цитата Сообщение от Verevkin Посмотреть сообщение
Во у тебя энергии и свободного времени сколько - всё это писать. Вместо словоблудия лучше бы взял, да и собрал.
Мог бы собрать, но принципиально не буду. Кто тёмный CodeBlocks не собирал, тот жизни не знал. Этот путь ты должен пройти сам.
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
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
Ответ Создать тему
Новые блоги и статьи
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы ## О чём эта статья В процессе построения ОДУ-модели (система дифференциальных. . .
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет) Содержание проекта Симуляция вековой (50 лет) экологической сукцессии в почве леса Основные участники: АМ-гриб, ЭКМ-гриб,. . .
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru