Функция strtok_s существует в vc8, но отсутствует в vc7. Так что же за функция (или код), которая выполняет эквивалент strtok_s в vc7?





Взгляните на эта страница MSDN.
Насколько я могу судить, улучшения безопасности: а) Сделайте strtok () реентерабельным (и поточно-ориентированным), заставив его принимать параметр «контекста», и б) Сделайте его безопасным для использования с указателями NULL. (Фактическое поведение в случае параметров NULL указано в таблице на странице, на которую я ссылаюсь.)
Что касается альтернативы VC7, вам придется написать (или импортировать) ее самостоятельно. NULL-безопасность легко реализовать извне, вам просто нужно быть осторожным, чтобы не передать NULL-строки там, где они не ожидаются; но что касается повторного входа, strtok () не может с этим справиться.
Взгляните на вопрос это и это. Я считаю, что POSIX также предоставляет реентерабельную версию strtok (), называемую strtok_r (); вы можете поискать это. Также было бы неплохо (и коротко) написать реализацию самостоятельно. Не должно занимать более ~ 10 строк кода.
да, я обновил свой ответ, включив в него больше информации о strtok () в целом, но потерял правку из-за уродливой аварии Firefox. Вопрос все равно касается strtok_s ().
Ваш вопрос непонятен. Вы имеете в виду "Где strtok_s в VC7" или "Что делает strtok_s?"