"Kill_of_Bill" <forum@rsdn.ru> wrote in message
news:210596@news.rsdn.ru...
ручками все надо делать:
szSource — твой cFileName
szDestination — куда записать результат
если не использовать СТЛ тогда можна написть следующий код
int nPos = strcspn(szSource, "." )+1; // to point on '.'
strncpy_from(szDestination, szSource, nPos, (strlen(szSource)+1)-nPos); // +1 - to save '\0'
где я написал свою функцию котораю умеет копировать не только начиная с первого символа как это делает strncpy (cм. параметр from):
char * __cdecl strncpy_from (
char * dest,
const char * source,
size_t from,
size_t count)
{
char *start = dest;
while (from && *source++)
;
while (count && (*dest++ = *source++)) /* copy string */
count--;
if (count) /* pad out with zeroes */
while (--count)
*dest++ = '\0';
return(start);
}
если использовать СТЛ что предпочтительние и короче то выйдет что такое:
string sSource("FileName.htm");
string sDestination;
sDestination.reserve(4);
int nPos = sSource.find(".")+1;
if (nPos>0)
sDestination.assign(sSource.begin()+nPos, sSource.end());
Posted via RSDN NNTP Server 1.4.5