머리말
참고 자료
get_string과 string
get_string 함수
- 스크래치의 say의 기능은 c언어의 get_string과 유사하다
string
- 문자열(string)은 프로그래밍에서 단어나 구절, 문장을 말하는데 숫자와는 다른 형태를 갖고 있다
값 입력
타입 명시
- c언어는 변수 이름 앞에 저장하고 하는 값의 종류가 적혀야 한다.
string answer = get_string("What's your name?\\n");
= 연산자
- 수학에서 =는 동등하다는 뜻이지만, 프로그래밍에서는 우항을 좌항에 대입(할당)하는 의미이다.
값 출력
printf 함수와 형식 지정 문자(%)
- 출력 함수에서 원하는 변수를 출력하려면 형식 지정 문자(%)와 그 값의 종류(문자열의 경우 s)를 적는다.
- 그리고 쉼표(,)를 활용하여 그 형식에 해당하는 변수를 적는다.
string answer = get_string("What's your name?\\n");
printf("hello, %s\\n", answer);
질문과 답변
문자열이란 무엇인가?
- 쌍따옴표("")에 들어간 0개 이상의 문자 배열
줄바꿈 문자(\n)가 문자열 밖에 들어간다면?
- 직접 해 보는 습관이 중요하다
- 에러가 생기는데, 어떠한 점이 잘못 되었는지 컴파일러가 알려준다.
string은 c언어의 타입이 아니다(!)
- 이해를 돕기 위해 교수님이 string을 타입으로 작성했을 뿐 c언어에서는 string이라는 타입이 존재하지 않는다.
- 아마 당장 이해하기에는 한번에 많은 정보가 들어 오니 교수님께서 학생들을 배려한 것 같다.
- get_string 또한 정식 함수가 아닌데 string과 함께 이러한 것을 지원하기 위해서는 cs50.h를 불러와야 한다.
꼬리말
질문과 답변에 익숙한 미국의 대학
- 일반화하기는 어렵지만, 개인적인 경험으로 내가 겪어온 한국의 학교에서는 마지막에 질문 있으세요?에 침묵으로 일관하기 마련이다.
- 적극적인 질문과 답변이 오가는 미국 대학생의 모습을 보면서 한국에서도 저런 소통이 오가는 수업이 되었으면 하는 바람이 들었다.
'CS 기초 > CS50 2019' 카테고리의 다른 글
[C언어] 포인터 (0) | 2023.06.04 |
---|---|
[CS50 2019] (C언어) C 기초 (0) | 2023.05.27 |
[CS50 2019] (컴퓨팅 사고) 알고리즘 (0) | 2023.04.06 |
컴퓨팅 사고) 정보의 표현 (in CS50 2019) (0) | 2023.04.05 |
[CS50 2019] (컴퓨팅 사고) 이진법 (0) | 2023.03.26 |
댓글