Scientia est Potentia

만도 IVS 2기 _ 3일차_ C 본문

취업준비

만도 IVS 2기 _ 3일차_ C

박 현규 2024. 5. 29. 17:02

 

 

6장. 배열과 문자열 

- 빈문자 포함 입력

scanf를 사용해서, 이름을 입력 받고 주소를 따로 입력했음에도,

주소에 스페이스(공백, white space)가 있어서 '서울시 금천구'를 입력했는데도 '서울시'만 입력됨.

 

그래서, scanf 대신 gets를 쓰면 됨. >> \n 까지만 인식하고 

 

근데 scanf로 입력받은 값을 a변수에 넣고,

gets로 b변수에 입력해도, 이전에 scanf로 입력받을 때 눌렀던 엔터 등이 그대로 버퍼에 남아있네,,,?

남아있는게 맞나?

 


번외.

VS code 등 쓰면서, 환경변수가 잘못되었는지 등의 문제로

printf등이 안된다거나 할때,

vs code를 uninstall 하고 다시 깔아도 그대로다.

C드라이브 > User > user > .... 안에 저장된 관련폴더를 삭제해야하는데,

웬만하면 구글에 나와있다.

구글 검색 ㄱㄱㄱ


C언어의 문자열 변수 저장방식을 배우다가,

'얕은 복사'라는 반가운 단어가 나왔다. 파이썬 배우다가 들은 듯.

C언어에서는, '문자열'만 이런 방식을 쓴다고함. 숫자 변수나, 배열과는 다른 방식.

 

 

 

 

strcpy가 안된다.

i랑 j는 프린트가 되는데, str1,2는 프린트가 안됨,,,

 

) 정수(%d), 실수(%lf), 문자(%c), 문자열(%s)

 

 

 

 

아 scanf를 쓸 줄 몰라서 답답해 죽을 뻔하다가, 치현이한테 물어봐서 알았다.

 

 

 

도대체 이건 왜 %p를 쓰고 하나는 &a를 하고 a를 쓰는 건 왜 하는거지?

으어어어 어렵다 어려워 답답한 느낌도 들고,

강사님의 속도가 너무 일방적이다. 근데 나 뺴고 다들 잘해보여.

 

 

char에는 왜 *를 쓰는가

 

 

이 예제를 통해, 경로.. 주소... 등의 이해를 해야겠다.

 

 

 

 

 

 

a *= 3 

  >> 이거는 a = a*3이랑 같은 듯.

 

 

 

프로그래밍을 할땐 항상 이렇게

조금만 이해가 안되는게 있으면 막 짜증이 난다. ㅠ

 

이걸 마지막으로,

작성은 그만 하고 강사님이 설명하시는 것에 집중하려한다.

코드는 어차피 강사님 깃허브에 그대로 올라가니까.

이도 저도 안될바에는 일단 이해에 집중하자.

 

 

&  = 엔퍼센트

* = 아스트리크

라고 부르심.

 

값이 주소인 변수는, 포인터변수 라고 하는듯?

 

주소변수 A를 정의하려면?  int* A

주소변수 A의 데이터값을 보려면?   *A

'123' 숫자가 들어있는 변수 PHK의 주소를 보려면?   &PHK

 

주소변수를 활용하는 걸 Call by Reference 라고 하는 듯?

 

) 정수(%d), 실수(%lf), 문자(%c), 문자열(%s)

주소(%p)

 

매개변수? 리턴? 추가 학습 필요할 듯.

 

Static : 다른 

 

 

 

 

 

 

 

포인터는 어려움+졸았음 이슈로 제대로 못하고,

구조체는 그나마 쉬워서 다시 타이핑 중이다...

 

포인터 구조 계속 보다보니까

조금씩 이해가 되기도 하고, 타이핑도 점점 빨라진다.

잠을 7시간 이상 꼭 자자. 잠이 부족해서 집중도 깨지고 하는 듯 하네.(오늘 5시간도 못잠)

 

 

 

자기 참조 구조체

 

오 쉣 이게 뭐야 헷갈려요

'취업준비' 카테고리의 다른 글

만도 IVS 2기_4일차_ Python  (0) 2024.05.31
아나콘다로 py파일 실행법  (0) 2024.05.31
Vs code - Code Runner scanf 입력받기  (0) 2024.05.28
만도 IVS 2기 _ 2일차_ C  (0) 2024.05.28
만도 IVS 2기 _ 1일차_ C  (0) 2024.05.27