/* バッファの終端までに収まる */
if (ring.wptr + all_length + 1 < RINGBUF_SIZE) {
- memcpy(ring.buf + ring.wptr, header.data(), header.length());
+ std::copy_n(header.begin(), header.length(), ring.buf + ring.wptr);
if (!payload.empty()) {
- memcpy(ring.buf + ring.wptr + header.length(), payload.data(), payload.length());
+ std::copy_n(payload.begin(), payload.length(), ring.buf + ring.wptr + header.length());
}
*(ring.buf + ring.wptr + all_length) = '\0';
ring.wptr += all_length + 1;
int tail = all_length - head; /* 後半 */
if ((int)header.length() <= head) {
- memcpy(ring.buf + ring.wptr, header.data(), header.length());
+ std::copy_n(header.begin(), header.length(), ring.buf + ring.wptr);
head -= header.length();
if (head > 0) {
- memcpy(ring.buf + ring.wptr + header.length(), payload.data(), head);
+ std::copy_n(payload.begin(), head, ring.buf + ring.wptr + header.length());
}
- memcpy(ring.buf, payload.data() + head, tail);
+ std::copy_n(payload.data() + head, tail, ring.buf);
} else {
- memcpy(ring.buf + ring.wptr, header.data(), head);
+ std::copy_n(header.begin(), head, ring.buf + ring.wptr);
int part = header.length() - head;
- memcpy(ring.buf, header.data() + head, part);
+ std::copy_n(header.data() + head, part, ring.buf);
if (tail > part) {
- memcpy(ring.buf + part, payload.data(), tail - part);
+ std::copy_n(payload.begin(), tail - part, ring.buf + part);
}
}
*(ring.buf + tail) = '\0';
#endif
update_term_size(x, y, len);
(void)((*angband_terms[0]->text_hook)(x, y, len, (byte)col, mesg));
- memcpy(&game_term->scr->c[y][x], mesg, len);
+ std::copy_n(mesg, len, &game_term->scr->c[y][x]);
for (i = x; i < x + len; i++) {
game_term->scr->a[y][i] = col;
}
mesg[i] = '\0';
update_term_size(x, y, len);
(void)((*angband_terms[0]->text_hook)(x, y, len, (byte)col, mesg));
- memcpy(&game_term->scr->c[y][x], mesg, len);
+ std::copy_n(mesg, len, &game_term->scr->c[y][x]);
for (i = x; i < x + len; i++) {
game_term->scr->a[y][i] = col;
}
case 's': /* 一文字 */
update_term_size(x, y, 1);
(void)((*angband_terms[0]->text_hook)(x, y, 1, (byte)col, mesg));
- memcpy(&game_term->scr->c[y][x], mesg, 1);
+ std::copy_n(&game_term->scr->c[y][x], 1, mesg);
game_term->scr->a[y][x] = col;
break;