ft putend fd実施


1.ft putend fd用途

* 파라미터로 들어오는 fd와 char *변수 s를 이용해 s 문자열을 모두 출력하고, \n을 출력하는 함수

2.ft putend fdプロトタイプ

void	ft_putendl_fd(char *s, int fd)
char *s : 출력할 char 포인터 변수 s. s 문자열.
int fd : 파일 디스크립터. 정수값으로 파일 디스크립터를 받음.

3.ファイルディスクの立棒とは?


  • UNIXシステムでは、プロセスは特定のファイルの抽象鍵にアクセスします.

  • すべてのプロセス(プログラムがメモリにロードされ、プログラムインスタンス)に必要な標準POSIXファイル記述子を以下に示します.

  • file記述子の値はunsigned int値であり、負の値にはできません.


  • しかし、実際のwrite関数でテストした結果、ファイルディスクライタの数にかかわらず出力されます.ファイルディスクトリガの整数がどのように異なるかをさらに理解する必要があります.
  • 4.実施上の注意事項


  • 以前に実装されたft putchar fd()を用いて実装した.ft putchar fd()は、以前の記事を参照してください.

  • file記述子の値は内部でunsigned int値を使用するため、負の値にはできません.したがって、負の数は返されます.始まりました.

  • なお、ft putstr fd()とは異なり、最後に「n」が出力される.
  • 5.コード実装

    #include "libft.h"
    
    void    ft_putendl_fd(char *s, int fd)
    {
            int             index;
    
            index = 0;
            if (fd < 0)
                    return ;
            while (s[index] != '\0')
            {
                    ft_putchar_fd(s[index], fd);
                    index++;
            }
            write(fd, "\n", 1);
    }

    6.コード実装方法


    (1)ファイルディスクの立位が負の値であるかどうかを確認し、負の値である場合に戻る.始まりました.
    (2)以前に実装されたft putchar fd()を用いてs[index]が0でないまでs[index]を出力する.
    (3)最後に「n」を出力する.