Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Поясните, пожалуйста, смысл ветки алгоритма / 4 сообщений из 4, страница 1 из 1
21.04.2014, 12:13
    #38620255
Поясните, пожалуйста, смысл ветки алгоритма
Процедура копирует данные:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
void CopyData(BYTE *lpvSrc, BYTE *lpvDst, DWORD dwLen)
{
	DWORD i;
	if (lpvSrc && lpvDst)
		for (i = 0; i < dwLen; i++)
			lpvDst[i] = lpvSrc[i];

	if (!lpvSrc && lpvDst) // Для чего это?
		for (i = 0; i < dwLen; i++)
			lpvDst[i] = 0;
}


Вроде понятно, что в
Код: plaintext
1.
	if (lpvSrc && lpvDst)


- выполняется копирование в случае, когда источник отличается от приемника.

Не совсем понял, для чего ветка
Код: plaintext
1.
if (!lpvSrc && lpvDst)


?

Поясните, пожалуйста.

Спасибо
...
Рейтинг: 0 / 0
21.04.2014, 12:16
    #38620260
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поясните, пожалуйста, смысл ветки алгоритма
Заполнить нулями если lpvSrc == NULL
...
Рейтинг: 0 / 0
21.04.2014, 12:20
    #38620267
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поясните, пожалуйста, смысл ветки алгоритма
Аццкий <<Т>Вроде понятно, что в
Код: plaintext
1.
	if (lpvSrc && lpvDst)


- выполняется копирование в случае, когда источник отличается от приемника.
неверно, это равносильно такому условию
Код: plaintext
1.
	if (lpvSrc != NULL && lpvDst != NULL)
...
Рейтинг: 0 / 0
21.04.2014, 12:20
    #38620269
Поясните, пожалуйста, смысл ветки алгоритма
Dima T,

спасибо!
Что-то я на выражение под if не посмотрел, только в само условие уперся...
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Поясните, пожалуйста, смысл ветки алгоритма / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]