본문 바로가기
cs/CS50

2: C언어-2(문자열)

by 이쟝 2021. 11. 24.

2. 문자열

문자열은 string이라고 한다

answer이라는 변수에 사용자 이름을 받는다

get_string 은 ask 함수와 가장 유사한 함수

 

  • 사용자의 이름을 받아서 저장할 변수를 answer라고 정함(여기서 C는 오래된 언어이기 때문에 데이터의 종류를 정확하게 명시해줘야 함)
  • 그래서 저장하고자 하는 값의 종류가 문자열(string)이라는 것을 알려줘야 함 이때 string을 형식지정자라고 함
  • =는 할당 연산자로 오른쪽에 있는 것을 왼쪽에 지정한다는 의미(get_string 함수가 사용자의 이름을 반환하면 그 이름을 answer라는 변수에 저장하는 것)

  • answer이라는 변수에 들어있는 이름을 출력하기 위해서 %를 사용함(이때도 어떤 종류의 인자를 받는지 말해줘야 함)
  • 문자열을 받기 때문에 string에서의 s를 %뒤에 붙여서 인자를 받아줌!
  • %s는 입력값이 들어갈 형식 지정자(placeholder)

  • 가장 위에 포함된 cs50.h 파일 안에 string이라는 문자열 형식과 get_string이라는 함수에 대한 코드가 포함되어 있기 때문에 이 파일을 포함해야만 전체 코드를 컴파일하고 실행할 수 있음
  • cs50.h 파일은 get_string과 같은 함수 프로토타입을 사전에 정의해줘서 C에서 기본으로 제공하는 것보다 더 많은 함수를 사용할 수 있게 해 줌

터미널(프롬포트)에 입력하기

  • 여기서 -o string은 string.c를 string.out이라는 머신코드로 저장하도록 하는 명령어(-o는 컴파일된 파일을 내 마음대로 지정하는 것, 명령행 인자)
  • -lcs50은 “link”라는 의미를 지닌 -l이라는 인자에 추가로 포함한 “cs50”파일을 합친 것으로 이를 통해 컴파일 시 cs50파일을 연결함
  • 이 대신에 make 명령어를 통해 간단하게 컴파일을 수행할 수 있음($ make C의 파일 이름)

 

https://www.boostcourse.org/cs112/joinLectures/41307

 

모두를 위한 컴퓨터 과학 (CS50 2019)

부스트코스 무료 강의

www.boostcourse.org

 

'cs > CS50' 카테고리의 다른 글

2: C언어-4(자료형, 연산자)  (0) 2021.11.24
2: C언어-3(조건문과 반복문)  (0) 2021.11.24
2: C언어 -1(C언어 기본)  (0) 2021.11.24
1: 컴퓨팅 사고-3(알고리즘 기초)  (0) 2021.11.23
1: 컴퓨팅 사고-2(아스키코드)  (0) 2021.11.23