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

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

02.11.2025, 15:02. Показов 8795. Ответов 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
фрилансер
 Аватар для Алексей1153
6508 / 5758 / 1135
Регистрация: 11.10.2019
Сообщений: 15,407
09.11.2025, 16:52
Студворк — интернет-сервис помощи студентам
Royal_X, так же будет, поскольку elision
0
Заблокирован
Эксперт функциональных языков программированияЭксперт С++
09.11.2025, 16:55
Цитата Сообщение от Алексей1153 Посмотреть сообщение
так же будет, поскольку elision
то, что и так работает, это понятно. Но для эстетики нужно добавить )

и в ide подсказка будет правильной при наведении мыши




вернее, ide в обоих случаях правильно подсказывает, но я про то, что если использовать правильный литерал, то потом можно и правильно ориентироваться в ide
0
Заблокирован
Эксперт функциональных языков программированияЭксперт С++
09.11.2025, 17:20
Лучший ответ Сообщение было отмечено Наталья8 как решение

Решение

Цитата Сообщение от Наталья8 Посмотреть сообщение
Здесь на единичку ошибёшься, ни чё работать не будет.
Цитата Сообщение от Наталья8 Посмотреть сообщение
C++
1
2
3
FILE *file_for_save = _wfopen(l_szSrcFile, L"w+b");
                    if (file_ptr == NULL) {
                        printf("failed to open file for reading\n");
ты вообще тот указатель проверяешь?

Цитата Сообщение от Наталья8 Посмотреть сообщение
C++
1
wcscpy(tmp_name, wcsrchr(l_szSrcFile, '\\'));
а если \ не будет, то вроде вернет NULL, что вызовет потом бах

Цитата Сообщение от Наталья8 Посмотреть сообщение
C++
1
*(wcsrchr(l_szSrcFile, '\\')) = '\0';
тоже самое, если wcsrchr вернет NULL, это приведет к записи по нулевому адресу

***

Чем ничтожнее тема, тем длиннее обсуждение.
0
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,374
09.11.2025, 20:10
Цитата Сообщение от Royal_X Посмотреть сообщение
FILE *file_for_save = _wfopen(l_szSrcFile, L"w+b");
                    if (file_ptr == NULL) {
                        printf("failed to open file for reading\n");
Здесь ошибка у меня. А всё остальное правильно.
Ещё вот так пишу--
C++
1
swprintf(wcsrchr(l_szSrcFile, '\\'),L"%s", L"\\literal.txt");// Не проверял.
На string тоже умею... Начинал на них. Но так мне кажеться конкретнее. Безглючнее.
(Это ищет справа первый слеш. И туда пишет литерал.)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
wchar_t end_ln[8]{};
wcscpy(end_ln, wcsrchr(name, ')'));
//---------------------------------
//wprintf(L"%s", end_ln); getchar();
 
while (true) {
    // Файлы именуються всегда на единицу больше, чем файл с максимальным номером.
    while (_waccess(PathUtf16, 0) == 0)
    {
        ++real_cnt;
        swprintf(wcsrchr(PathUtf16, '\\') + 8, L"%d%s", ++number, end_ln);
    } // Вылет из цикла - файла с такой цифрой нет.
    if (real_cnt == cnt)break;
    swprintf(wcsrchr(PathUtf16, '\\') + 8, L"%d%s", ++number, end_ln);
}
Самая короткая подстановка нового файла с номером. Самая малострочная.
Я такое по всякому писал. И на string тоже...
Эта карусель везде... Несколько лет... И работает..

Добавлено через 2 минуты
Молодец вникнул.
А других кнопочек у меня нету. Не положено. Не заработал.

Добавлено через 5 минут
Цитата Сообщение от Royal_X Посмотреть сообщение
тоже самое, если wcsrchr вернет NULL
До сих пор не возвращала... Может завтра...
(Мама потом отдаст...)
Если вернёт нуль, компьютер в охапку, и на мусорку.
0
Just Do It!
 Аватар для XLAT
4221 / 2686 / 656
Регистрация: 23.09.2014
Сообщений: 9,246
Записей в блоге: 3
09.11.2025, 20:23
Цитата Сообщение от Royal_X Посмотреть сообщение
Чем ничтожнее тема, тем длиннее обсуждение.
не фик тут обсуждать - делай как я сказал! - и усё.

а если не делаешь, то тогда ты сам себе доктор))
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
09.11.2025, 21:46
Цитата Сообщение от Наталья8 Посмотреть сообщение
wcsrchr(PathUtf16, '\\')
Вот так привыкнет пихать шокудапопало.
А потом такой, wcsrchr(PathUtf16, 'Ё') - упс-с-с.
Ну а предупреждения, да черт с ними, пищит себе что-то там, пусть пищит)

"И так сойдет!"
Это не Наталья, а ходячий джокер.
0
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,374
10.11.2025, 00:37
Цитата Сообщение от SmallEvil Посмотреть сообщение
А потом такой, wcsrchr(PathUtf16, 'Ё') - упс-с-с.
Какое Ё?
ты о чём?
Функция wcsrchr( не нравиться?
Я ни разу ни какого Ё не искал... Это слеш как бы.... Один символ...
Ни с каким ЙО не работаю.

Последняя слеш находиться в любом тексте. И utf8 тоже. Имею некоторый опыт.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if (*(strrchr(buf_for_txt, '\r') + 2) != '\0') {// Если в конце массива не стоит \r\n
        strcat(buf_for_txt, "\r\n"); cur += 2;// Подставить и увеличить размер
    }
    unsigned short size = cur;
 
fwrite(buf_for_txt, sizeof(char), cur,// <-- Гнать весь файл
    file_ptr);
    // ---------------------------- Поставим метку в конец файла
 
fwrite("#end_of_txt\r\n", sizeof(char), strlen("#end_of_txt\r\n"),// 
        file_ptr);
    size += strlen("#end_of_txt\r\n");
    
    fseek(file_ptr, 43, SEEK_SET);// Смещение и размер. Пишем.
fwrite(&cur_n, sizeof(cur_n), 1, file_ptr);
fwrite(&size, sizeof(size), 1, file_ptr);
На ещё почитай...
0
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,374
10.11.2025, 15:14
Конечно велосипед... Позор на мои седые голова.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.11.2025, 15:14

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
88
Ответ Создать тему
Новые блоги и статьи
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
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