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

Подводные камни

02.11.2025, 15:02. Показов 8153. Ответов 87

Студворк — интернет-сервис помощи студентам
Какие основные ошибки совершают начинающие при изучении C++ и как их избежать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.11.2025, 15:02
Ответы с готовыми решениями:

Подводные камни клиент-серверного приложения
Здравствуйте дорогие Хорошую статью дал мне Vitaly1981 http://citforum.ru/book/cook/winsock.shtml ...

Подводные камни в стеке, в очереди, в списке
какие могут быть ошибки в структурах данных? например, вот в очереди начало может догнать конец....

Какие подводные камни могут быть, при хранении в контейнере элемента типа void*?
Привет читателям! Какие подводные камни могут быть, при хранении в контейнере элемента типа void*?...

87
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
07.11.2025, 17:01
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Алексей1153 Посмотреть сообщение
_Ivana, при чём тут какие-то книжки.
Да ни при чем, просто думал, что с адекватным собеседником общаюсь. А вы уже дошли до того, что отождествляете стандартную либу с плюсами, а ассемблерам и сям отказываете в таковой (со всеми векторами и мапами в наличии).

Цитата Сообщение от XLAT Посмотреть сообщение
прямо чувствуется, что это какая-то очень специфическая весчъ...
Если бы вы знали, что Лисп это означает буквально сокращение от "Лист процессинг", что на русский в данном контексте переводится как "вычисление списков", то для вас это не звучало бы странно.
0
07.11.2025, 17:07

Не по теме:

Цитата Сообщение от XLAT Посмотреть сообщение
так вики ваши пишут
не знаю, кто пишет. Наверное, и ты може писать.

0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
07.11.2025, 17:44
Цитата Сообщение от _Ivana Посмотреть сообщение
сли бы вы знали, что Лисп это означает буквально сокращение от "Лист процессинг", что на русский в данном контексте переводится как "вычисление списков", то для вас это не звучало бы странно.
ок.
если в моем контексте данного форума:

была(и есть) такая тема в разделе "Программирование игр"

суть:
1. есть окно с двумя суб-окнами.
2. в окне 1 находится некая рандомная система.
3. система имеет программные(через апи) датчики и контролы(функция с командой в аргументе).
4. в окне 2 находится интерпретатор, который подключается к окну 1 через упомянутое выше апи.
5. нужно разработать такой интерпретатор, который мог бы делать вычисление над сигналами датчиков и ...
6. отправлять управляющий сигнал обратно к системе.
7. синтаксис интерпретатора может выглядеть как бейсик, ну, чем проще, тем лучше...
8. прога, напоминаю, для детей... для развития мышления))
9. в окне 2 игроки лапками должны на _скрипте писать, собсно, сам код скрипта, который бы управлял системой в окне 1.

...

_Ivana, итак, уважаемый лектор, у меня к вам вопрос:
1. Как сложно будет сделать такой интерпретатор вашим студентам?
2. Какое расчетное время вы на эту задачу им выделяете?
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
07.11.2025, 18:07
Цитата Сообщение от XLAT Посмотреть сообщение
суть:
Это не суть, а какая-то ерунда. Окна, субокна, контролы... Когда вся задача интерпретатора - получить входные данные, обработать их каким-то образом и выдать результат, то есть банально логика преобразования. Возможно, в вашем представлении есть образ этой проги для детей (Ардуинка с роботом или Черепашка с Лего/Скратчем), но донести этот образ через представленное вами описание не удалось. А по сути - ничего не надо делать, он уже готов. Преобразовывать входные данные в выходные вполне умеет

Возможно, пример этой игры на интерпретаторе может показать возможности и сойти за "прогу для детей": https://ivanov-andrey.itch.io/labyrinth-v2
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
07.11.2025, 18:11
Цитата Сообщение от _Ivana Посмотреть сообщение
Преобразовывать входные данные в выходные вполне умеет
простейший парсер в одну функцию отлично подходит к этому вашему утверждению.

речь идет про конкретную задачу - не нужно навешивать про черепашки со скрачом.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,560
07.11.2025, 18:27
Цитата Сообщение от _Ivana Посмотреть сообщение
пример этой игры
я бы hole переименовал на portal или на teleport или на warp. Ну или если нравится это слово, то на wormhole. Просто я так сразу не понял, что оно делает, пока не включил отображение карты.
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
07.11.2025, 18:33
Цитата Сообщение от XLAT Посмотреть сообщение
речь идет про конкретную задачу
Это ваша задача, решайте ее, если вам нравится. У меня нет желания даже вникать. Тем более, что я и так уже дал предостаточно ссылок, но, видимо, впустую. Да и оффтоп это - здесь мы обсуждаем простоту, легкость и отсутствие недостатков у С++
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
07.11.2025, 18:39
Цитата Сообщение от Royal_X Посмотреть сообщение
Габидж Цэлектэ)
Шошо? Не розумiю це.
0
фрилансер
 Аватар для Алексей1153
6495 / 5726 / 1133
Регистрация: 11.10.2019
Сообщений: 15,287
07.11.2025, 18:42
Цитата Сообщение от Royal_X Посмотреть сообщение
Ведь, по ISO C++ нижнее подчеркивание зарезервировано
это когда за первым подчёркиванием следует заглавная буква. С маленькой можно


Цитата Сообщение от _Ivana Посмотреть сообщение
просто думал, что с адекватным собеседником общаюсь
да, мне тоже сначала так показалось. Удачно дальше вариться в своих фантазиях
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,560
07.11.2025, 18:44
Цитата Сообщение от Verevkin Посмотреть сообщение
Не розумiю це.
А ну скажи "Паляниця"

Verevkin, garbage collector - GC - на великорусский язык переводится как ГЦ. Почему это так - сам не знаю. Ведь, должно было быть СМ - сборщик мусора. Видимо, СМ ассоциируется с Советом министров, и чтобы не обидеть министров, пишут ГЦ.
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
07.11.2025, 18:47
Цитата Сообщение от Royal_X Посмотреть сообщение
А ну скажи "Паляниця"
А ну скажи "Сыктывкар"!!

Добавлено через 1 минуту
Цитата Сообщение от Royal_X Посмотреть сообщение
сборщик мусора
Мы ща про С++ или про C#?
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,560
07.11.2025, 18:49
Цитата Сообщение от Алексей1153 Посмотреть сообщение
это когда за первым подчёркиванием следует заглавная буква. С маленькой можно
про маленькую там тоже написано, что зарезервировано, но только в глобальном пространстве. А именно, там написано, что в любом scope зарезервировано, когда следует заглавная или когда двойное нижнее подчеркивание. А в глобальном пространстве уже не написано, что обязательно должна следовать заглавная.

Reserved in any scope, including for use as implementation macros:
- identifiers beginning with an underscore followed immediately by an uppercase letter
- identifiers containing adjacent underscores (or "double underscore")
Reserved in the global namespace:
- identifiers beginning with an underscore

Добавлено через 1 минуту
Цитата Сообщение от Verevkin Посмотреть сообщение
Мы ща про С++ или про C#?
хз, я не в курсе. пролистай на страницу назад или две, посмотри вообще, кто начал говорить о ГЦ
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
07.11.2025, 18:56
Цитата Сообщение от Royal_X Посмотреть сообщение
хз, я не в курсе. пролистай на страницу назад или две, посмотри вообще, кто начал говорить о ГЦ

Я в кроватке под пледиком, а на пузе у меня кот.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
07.11.2025, 19:28
Цитата Сообщение от Royal_X Посмотреть сообщение
garbage collector - GC - на великорусский язык переводится как ГЦ. Почему это так - сам не знаю. Ведь, должно было быть СМ - сборщик мусора. Видимо, СМ ассоциируется с Советом министров, и чтобы не обидеть министров, пишут ГЦ.
Патамушта ачень умныи люде пишат.
Поэтому все остальные должны догадаться что там автор имел в ввиду своих аббревиатурах.
Аббревиатуры используются в основном в контексте, и хороший тон при общении и/или написании чего либо, первый раз писать полностью.
ГЦ - генератор циферок. Всё в контексте темы.
Нет такого ГЦ и всё, интерпретатора не напишешь)
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
07.11.2025, 19:39
Цитата Сообщение от _Ivana Посмотреть сообщение
Это не суть
верно.

вот суть:
Цитата Сообщение от _Ivana Посмотреть сообщение
У меня нет желания даже вникать.
:лол

Не по теме:

суть в том, что конь в сферическом вакууме мало кому нужен ...

0
фрилансер
 Аватар для Алексей1153
6495 / 5726 / 1133
Регистрация: 11.10.2019
Сообщений: 15,287
07.11.2025, 21:27
Цитата Сообщение от Royal_X Посмотреть сообщение
про маленькую там тоже написано, что зарезервировано, но только в глобальном пространстве.
но тогда почему литеральные операторы должны начинаться именно с подчёркивания? И, что интересно, они могут быть как раз только в глобальном пространстве

Мне кажется, там что-то недоговаривают
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
07.11.2025, 22:02
Цитата Сообщение от Алексей1153 Посмотреть сообщение
но тогда почему литеральные операторы должны начинаться именно с подчёркивания?
Так где ж они начинаются с подчеркивания, когда это лишь разделитель текста литерала и суффикса, имени.
Цитата Сообщение от Алексей1153 Посмотреть сообщение
там что-то недоговаривают
Наверняка это заговор.
0
 Аватар для Наталья8
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,230
09.11.2025, 13:55
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
wchar_t tmp_name[128]{};// Имя файла запоминаем, в конце восстанавливаем.
                    wcscpy(tmp_name, wcsrchr(l_szSrcFile, '\\'));//Со слешами впереди.
                    *(wcsrchr(l_szSrcFile, '\\')) = '\0';
                    wcscat(l_szSrcFile, L"\\filename.txt");
                    //wprintf(L"%s \n %s", tmp_name, l_szSrcFile);
                    //getchar();
                    FILE *file_for_save = _wfopen(l_szSrcFile, L"w+b");
                    if (file_ptr == NULL) {
                        printf("failed to open file for reading\n");
                        getchar();
                        return 1;
                    }
                    *(wcsrchr(l_szSrcFile, '\\')) = '\0';
                    wcscat(l_szSrcFile, tmp_name);// Восстановление адреса.
Алгоритм на си... Какие здесь камни? Здесь на единичку ошибёшься, ни чё работать не будет.
//wprintf(L"%s \ - Сразу для контроля.
Это что бы в том же фолдере ещё файл прилепить.
Только по нормальному,
Когда адреса полностью, а не как здесь всегда пишут.
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
09.11.2025, 15:46
Цитата Сообщение от Наталья8 Посмотреть сообщение
Здесь на единичку ошибёшься, ни чё работать не будет.
вы фикней мучаетесь.

делать так надо:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void Hatalyab(std::wstring_view path, std::wstring_view filename = L"filename.txt")
{
    std::wstring pf(path); pf += filename;
    
    if(std::ofstream f(pf); !f.is_open())
    {
        throw("failed to open file for reading\n");
    }
    
    ///-------------------------|
    /// Сохраняем чаво нуно.    |
    ///-------------------------:
    /// TODO: ...
}
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6313 / 3036 / 1053
Регистрация: 01.06.2021
Сообщений: 11,560
09.11.2025, 16:43
Цитата Сообщение от XLAT Посмотреть сообщение
L"filename.txt"
надо так
C++
1
2
3
using namespace std::literals;
 
L"filename.txt"sv
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.11.2025, 16:43

Подводные камни realloc
Всем привет. Пишу структуру данных, которая при определенных обстоятельствах может перераспределять...

Использование long вместо long int. Возможны ли подводные камни?
Добрый день. Моя цель - писать кроссплатформенный C++ код, поэтому хочу отказаться от типа int...

Подводные камни обмена объектами между программой и DLL
Доброго времени суток. Есть программа, разделенная на основной модуль и DLL Для обмена...

Подводные камни использования библиотеки Qt в Visual Studio
С одной стороны, глупый вопрос: библиотека есть библиотека, берёшь и пользуешь. С другой стороны, я...

Необходимо разбить камни на две кучи таким образом, чтобы веса куч отличались не более чем в 1.5 раза.
Имеется N камней веса А1,А2,...,АN. Необходимо разбить их на две кучи таким образом, чтобы веса...


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

Или воспользуйтесь поиском по форуму:
80
Ответ Создать тему
Новые блоги и статьи
сукцессия 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