낙서장

  • 홈
  • 태그
  • 방명록

scanf 1

scanf, gets, fgets 차이

scanf()는 문자열 입력시, 엔터전까지 문자열을 가져온다. 공백이 나오면 공백 이전까지 저장되고 마지막에 \0가 붙는다. 공백을 입력받기 어렵다보니 잘 안쓴다. abc를 입력했으니 실질적으로는 abc\0 이런식으로 저장된다. gets()는 \n까지 가져오고 \n을 \0으로 바꾼다. 결론적으로 abc\0가 저장된다. fgets()는 \n까지 가져오고 뒤에 \0를 덧붙여서 저장해준다. abc\n\0으로 저장된다. C는 입출력을 버퍼를 통해서 한다. 키보드로 입력을 할때 문자열이 버퍼에 들어간다. 그리고 함수들이 그 버퍼에서 가져오게 된다. scanf같은 함수가 문자들을 가지고 올때, \n을 버퍼에 남기고 가져가기 때문에, 다음에 문자열 입력을 받을 때 어려움이 생길 수 있다. 또한 우리가 일반적으로 입력..

프로그래밍/C 2022.04.01
이전
1
다음
프로필사진

낙서장

https://velog.io/@msh1307

  • 분류 전체보기 (94)
    • WARGAME (34)
      • FTZ (11)
      • pwnable.kr (6)
      • Lord of sql injection (9)
      • webhacking.kr (5)
      • pwnable.tw (3)
    • SYSTEM HACKING (7)
    • REVERSE ENGINEERING (1)
    • 프로그래밍 (13)
      • C (9)
      • JAVASCRIPT (2)
      • PYTHON (2)
    • PS (5)
      • BOJ (5)
    • Layer7 동아리 과제 (28)
    • OS, Kernel (5)
    • POSIX 동아리 정리 (1)

Tag

FTZ, 하드웨어, 리눅스 커널, 해커스쿨, OS, pwnable.tw, 리버싱, mmap libc leak, sysmallc_mmap, Level10, 커널, flask, pwnable.kr, lord of sql injection, 백준, BOJ, kernel, 링커, 시스템콜, malloc libc leak,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

  2025. 05  
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.