Qiita 6 - キータぞ、来たぞ、キータだぞー (693レス)
前次1-
抽出解除 レス栞

421
(1): デフォルトの名無しさん [sage] 2025/06/13(金) 22:37:04.80 ID:LfEUp8SQ(2/2) AAS
>>414
414(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*