Qiita 6 - キータぞ、来たぞ、キータだぞー (693レス)
上下前次1-新
抽出解除 レス栞
421(1): デフォルトの名無しさん [sage] 2025/06/13(金) 22:37:04.80 ID:LfEUp8SQ(2/2) AAS
>>414414(2): デフォルトの名無しさん [sage] 2025/06/09(月) 00:00:53.88 ID:begYsObR(1) AAS
『C言語 改行付きで文字列を出力する関数』
こんな記事にもコメントのひとつもつかなくなったか。
cut_lenの型がintで良いなら一番簡単
void print_with_line_breaks(const char* input, int cut_len) {
size_t len = strlen(input);
for (size_t i = 0; i < len; i += cut_len) {
printf("%.*s\n", cut_len, input + i);
}
}
1文字づつ出力してcut_len文字ごとに改行を出力する方法
void print_with_line_breaks(const char* input, size_t cut_len) {
size_t len = strlen(input);
for (size_t i = 0; i < len; i ++) {
putchar(input[i]);
if (i % cut_len == cut_len - 1) {
putchar('\n');
}
}
}
fwriteで出力する方法
void print_with_line_breaks(const char* input, size_t cut_len) {
size_t len = strlen(input);
for (size_t i = 0; i < len; i += cut_len) {
size_t remaining = len - i;
size_t to_copy = (remaining > cut_len) ? cut_len : remaining;
fwrite(input + i, 1, to_copy, stdout);
fwrite("\n", 1, 1, stdout);
}
}
他あるかな
423: 421 [sage] 2025/06/14(土) 23:40:48.45 ID:KKC+c9kC(1) AAS
「1文字づつ出力してcut_len文字ごとに改行を出力する方法」は最後の行が改行されない可能性が高い不具合があるからifの条件式直した方良かったな。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.264s*