Re[5]: Проблемы со считыванием структуры из файла
От: Кодт Россия  
Дата: 18.01.08 11:09
Оценка:
Здравствуйте, falcon8, Вы писали:

F>красиво а по быстродействию быстрее чем strncpy


Нет, это медленнее — хотя бы потому, что string использует динамическую память.
Но это надёжнее, очевиднее и более гибко.

А так — пожалуйста, можно написать функции по мотивам strncpy.
// условие: countof(dst) >= count+1
// результат: dst оканчивается нулём
void strncpy_z(char* dst, const char* src, size_t count)
{
    for( ; count && *src; ++src, ++dst, --count )
        *dst = *src;
    *dst = 0;
}

// условие: countof(dst) >= count; src оканчивается нулём
// результат: хвост dst забит указанными символами
void strncpy_c(char* dst, const char* src, size_t count, char pad)
{
    for( ; count && *src; ++src, ++dst, --count )
        *dst = *src;
    for( ; count; ++dst, --count )
        *dst = pad;
}


F>и как применить всё это


Так вы что, и конфеты за меня есть будете? — Ага!

ifstream file("1.txt", ios::in|ios::binary);

FileRecord fr; file.read(&fr, sizeof(fr));
cout << Record(fr) << endl;
... << RSDN@Home 1.2.0 alpha rev. 655>>
Перекуём баги на фичи!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.