Многие подходы возможны. Вот один из них: создайте более простую функцию, которая будет проверять, находится ли строка first
в конкретной указанной позиции, назовем ее start
в строке second
. Это довольно просто: вы сравниваете first[i]
с second[start+i]
для всех i
в диапазоне от 0 до длины first
- 1.
Затем вторым шагом будет повторение этой функции для всех начальных позиций от 0 до длины второй строки при проверке границ (вы не можете прочитать после конца строки).
Вы также можете выполнить некоторые оптимизации позже, когда будет работать первая версия. : -)
На самом деле я получил его!
В Windows API у Вас есть функция для создания названных cookie InternetSetCookie
, и Вы используете его как это:
InternetSetCookie("http://teste.com", NULL, "name = value; expires = Sat,01-Jan-2020 00:00:00 GMT");
Но, если Вы хотите удалить cookie вместо того, чтобы создать его, просто необходимо установить поле истечения где-нибудь в прошлом как это:
InternetSetCookie("http://teste.com", NULL, "name = value; expires = Sat,01-Jan-2000 00:00:00 GMT");
Больше информации об этом в Руководящих Cookie.
Не могли Вы просто искать C:\Documents and Settings\user\Local Settings\Temporary Internet Files
для файлов с 'cookie' в имени файла?
Вот вызов Win32 для получения папки:
BOOL SHGetSpecialFolderPath(
HWND hwndOwner,
LPTSTR lpszPath,
int nFolder,
BOOL fCreate
);
Передача CSIDL_COOKIES
как nFolder
аргумент.
Проверьте эту ссылку Очистка API для Windows.
Можно удалить кэшируемые cookie через FindFirstUrlCacheEntry
,FindNextUrlCacheEntry
и DeleteUrlCacheEntry
функции. Можно передать 'cookie': как первый аргумент (LPCTSTR lpszUrlSearchPattern
) к FindFirstUrlCacheEntry
.