Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Возможно переписать программу? https://www.cyberforum.ru/ cpp/ thread153534.html
Есть программа Upgrade UA.exe хочу запустить ее на windows mobile 6. Возможно ли ее переписать.
scanf C++
Пусть нужно читать из текста слова, пропуская все символы, кроме a-z и A-Z. То есть из текста Hello, world! ololo O_o получить только Hello world ololo O o Меня интересует, можно ли это...
C++ Вернуть stdin в консоль
Допустим я перенаправил поток stdin/stdout в файл с помощью функции freopen. Как заставить его снова работать с консолью? Добавлено через 9 минут Нашел. #include <cstdlib> #include <stdio.h>...
C++ Прошу помочь.Подключение dll на неуправляемом С/С++ Возникла проблема.Есть рабочая dll, необходимо подключить к CLR приложению. Подключение происходит нормально. Все функции работают нормально кроме одной(хотя dll проверял все работает в обычных... https://www.cyberforum.ru/ cpp/ thread152917.html
C++ Не сразу закрывающаяся программа https://www.cyberforum.ru/ cpp/ thread152799.html
Есть команды в терминале.. вроде telnet или sql, эти программы запускаешь и они остаются открытыми пока не дашь команду, например, quit. Во время работы программы она показывает знак приглашения...
C++ Парсер на С
вопшем есть файл с текстом..... в етом файле есть какие даные(мусор)...и есть дни: Понедельник,Вторник,среда......с етого файла нада вывести ети дни в порядке нахождениэ... ето походу несложная...
C++ Кто нибудь подскажет где можно найти исходник С/C++ алгоритм сжатия
Народ помогите, у меня времени нет чтобы самому разрабатывать алгоритм сжатия очень нужен алгоритм ещё лучше если на Asm (MMX, SSE2-3, SIMD) чтобы без потери данных а с восстановлением. Может какие...
C++ ANSI или UNICODE Всем привет!!! У меня возникла такая ситуация что использовать в WinApi программирование ANSI или UNICODE, где-то читал, что UNICODE работает быстрее, чем ANSI, так как при использование ANSI он ... https://www.cyberforum.ru/ cpp/ thread151437.html
C++ mingw и lib https://www.cyberforum.ru/ cpp/ thread151211.html
Как в mingw в коде подключить файл lib, #pragma comment(lib, "Gdi32.lib") не помогает. А то пытаюсь использовать SetTextColor и подобные функции, а без полезно без Gdi32.lib. Кто может подскажите.
C++ Шилдт Полный справочник по С++ 4.0 Собственно ищу код к справочнику, о котором упоминалось на обложке. https://www.cyberforum.ru/ cpp/ thread150953.html
Эксперт С++
3936 / 1801 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
16.07.2010, 19:03 0

Задачи для тренировки и лучшего понимания

16.07.2010, 19:03. Просмотров 407443. Ответов 1272
Метки (Все метки)

Лучший ответ Сообщение было отмечено как решение

Решение

Lavroff, Быстро вы сдались ...

Ну так и быть, попробую обьяснить.
Самый лучший способ понять результат - это последовательно, строчка за строчкой прокрутить её у себя в голове.

Итак, поехали...

Первое и второе действия - тривиальны.
C++
1
2
char buf1[100] = "Hello";
char buf2[100] = "World";
Объявлен массив типа char размерностью в 100 единиц.
Массивы инициализированы текстом.

Третие действие:
C++
1
char *ptr1 = buf1+2;
Обьявляем указатель ptr1, который будет указывать на адрес buf1 со смещением в две единицы.
Для наглядности убираем из buf1 два символа и видим, что ptr1 указывает на первую букву "l" в слове "Hello".

Четвёртое действие аналогично третьему:
C++
1
char *ptr2 = buf2+3;
Вычёркиваем из buf2 первые три символа и видим, что указатель ptr2 будет указывать на букву "l" в слове "World".

Пятое действие:
C++
1
strcpy(ptr1, buf2);
Функция strcpy выполняет копирование. Разберёмся что и куда копировать...
Копировать в ptr1 (который указывает на первую букву "l" в слове "Hello") из buf2 (buf2 мы не трогали, потому там есть слово "World").
Следовательно, в ptr1 у нас будет просто слово "World".
Вот здесь не нужно забывать, что ptr1 всего лишь указывает на адрес buf1 со смещением в две единицы.
Именно поэтому buf1 теперь содержит результат: "HeWorld".
Указатель ptr1, в свою очередь будет указывать на "World" (которое мы только что скопировали из buf2)

Шестое действие:
C++
1
strcpy(ptr2, buf1);
Аналогичное действие.
Указатель ptr2 указывает на букву "l" в слове "World".
В предыдущем действии мы выяснили, что в buf1 хранится "HeWorld".
После выполнения данной операции buf2 будет содержать "WorHeWorld"
А указетель ptr2 так и будет указывать на начало текста "HeWorld".

Седьмое действие:
C++
1
cout << ptr1 << endl << ptr2 << endl;
Тривиальный вывод на экран.
Указатель ptr1 указывает на "World".
А Указатель ptr2 указывает на "HeWorld"

Их и выводим на экран.

Вернуться к обсуждению:
Задачи для тренировки и лучшего понимания
25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.07.2010, 19:03

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Проверить на правильность и закомментировать весь код для лучшего понимания
Всем здравствуйте. Условие задачи - Заданная матрица целых чисел размером (N, N). Найти среднее...

Нужны задачи для тренировки
Киньте задачки на классы......а то в самоучителе, по которому я учу Сишку....приведены задачки,...

Нужны задачи для тренировки
Здравствуйте киньте пожалуйста задания по с++ для человека начинающего изучать Turbo с++

Нужны задачи для тренировки
Вот не давно был школьный этап по программирование в школе(олимпиады). Меня закинули на городскую,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.