>  기사  >  백엔드 개발  >  C 언어 문자열 출력 함수 puts()의 역할은 무엇입니까?

C 언어 문자열 출력 함수 puts()의 역할은 무엇입니까?

coldplay.xixi
coldplay.xixi원래의
2020-12-21 10:55:335150검색

C 언어 문자열 출력 함수 puts()의 기능: 1. [puts()]는 문자열을 표시할 때 문자열 끝에 자동으로 개행 문자를 추가합니다. 2. [puts()]는 다음을 만나면 중지됩니다. 널 문자 출력이므로 널 문자가 있는지 확인해야 합니다.

C 언어 문자열 출력 함수 puts()의 역할은 무엇입니까?

【관련 학습 추천: C 언어 튜토리얼 영상

C 언어 문자열 출력 함수 puts()의 역할:

  • puts()문자열 A를 표시할 때 개행 문자가 끝에 자동으로 추가됩니다.

  • puts()는 null 문자가 발견되면 출력을 중지하므로 null 문자가 있는지 확인해야 합니다. ​

다음 두 예제는 각각 puts()의 두 가지 특성을 보여줍니다. ​

예제 1:

/* put_out.c -- using puts() */
#include <stdio.h>
#define DEF "I am a #defined string."
int main(void)
{
    char str1[80] = "An array was initialized to me.";
    const char * str2 = "A pointer was initialized to me.";
 
    puts("I&#39;m an argument to puts().");
    puts(DEF);
    puts(str1);
    puts(str2);
    puts(&str1[5]);
    puts(str2+4);
 
    return 0;
}</stdio.h>

​ 이 프로그램의 출력은 다음과 같습니다:

I&#39;m an argument to puts().
I am a #defined string.
An array was initialized to me.
A pointer was initialized to me.
ray was initialized to me.
inter was initialized to me.

​ 위에 표시된 것처럼 각 문자열은 자체 라인에 있습니다. 왜냐하면 puts()가 자동으로 문자열 끝에 개행 문자를 추가하기 때문입니다. 표시됩니다.

예제 2:

/* nono.c -- no! */
#include <stdio.h>
int main(void)
{
    char side_a[] = "Side A";
    char dont[] = {&#39;W&#39;, &#39;O&#39;, &#39;W&#39;, &#39;!&#39; };
    char side_b[] = "Side B";
 
    puts(dont);   /* dont is not a string */
 
    return 0;
}</stdio.h>

다음은 이 프로그램의 예입니다. 결과는 실행될 때마다 다를 수 있습니다.

WOW!Side A

puts()는 중지할 위치를 어떻게 알 수 있습니까? ? 이 함수는 널 문자를 발견하면 출력을 중지합니다. 종료 널 문자가 없기 때문에 문자열이 아니므로 puts()는 어디에서 중지해야 할지 알 수 없습니다. null 문자가 발견될 때까지 dont 이후 메모리의 내용을 계속 인쇄합니다. puts()가 널 문자를 최대한 빨리 읽을 수 있도록 side_aside_b 사이에 dont를 넣습니다. 위는 프로그램의 실행 예입니다. 컴파일러마다 출력 내용이 다를 수 있습니다.

위 내용은 C 언어 문자열 출력 함수 puts()의 역할은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.