puts関数は、標準出力に文字列を出力します。

#include <stdio.h>
int puts(const char *s);

sは出力するデータが格納されている領域を指定します。

戻り値として、正常に出力できた場合は負ではない値を、エラーの場合はEOFの値を返します。

この関数は、引数に指定したchar型の配列のヌル文字(’\0’)の前までの内容に、改行(’\n’)を付加して出力します。

プログラム 例

#include <stdio.h>
#define SIZE 1024

int main(int argc, char **argv)
{
  FILE    *fp;
  char    buff[SIZE];
  int     return_code = 0;

  if (argc == 2) {
    if ((fp = fopen(*(argv + 1), 'r')) != NULL) {
      while(fgets(buff, SIZE, fp) != NULL) {
        puts(buff);
      }

      fclose(fp);
    }
    else {
      printf('入力ファイルのオープンに失敗しました\n');
      return_code = 1;
    }
  }
  else {
    printf('実行時引数の数が不当です\n');
    return_code = 2;
  }

  return return_code;
}

例の実行結果

$ cat temp1.txt
Hello World!!.
Bye.
$
$ ./puts.exe temp1.txt
Hello World!!.

Bye.

$