724______________________________Часть II. Программирование на C++

while (*pchCurrent && *pchCurrent != ',' && *pchCurrent is ')') '{

pchCurrent++;

}

if (*pchCurrent == TERMINATING_NULL) return;

if (*pchCurrent == ')') {

// В случае однословного имени просто копируем его.

while (*lpszInternalName && *lpszInternalName != ')')

(

*lpszFirstLastResult++ = *lpszInternalName++;

} )

else {

// В случае имени с фамилией опускаем запятую и // следующие за ней пробелы. pchCurrent ++ ;

while (*pchCurrent && *pchCurrent == ' ') {

pchCurrent ++;

}

if (*pchCurrent == TERMINATING_NULL) return;

// Копируем имя.

while (*pchCurrent && *pchCurrent != ')')

{

*lpszFirstLastResult++ = *pchCurrent++;

}

if (*pchCurrent == TERMINATING_NULL) {

*lpSzFirstLastResult = TERMINATING_NULL;

return;

}

// Отделяем имя от фамилии пробелом. *lpszFirstLastResult++ = ' ';

// Копируем фамилию.

while (*lpszInternalName && *lpszInternalName != ',')

{

*lpszFirstLastResult++ = *lpszInternalName++;

}

}

// Закрываем результирующую строку. *lpszFirstLastResult = TERMINATING_NULL;

}