C언어를 하게될 줄이야.
나는 JS로 공부를 시작했고, 비슷한 파이선을 조금 해봤다.
그래서 JS를 열심히 한 후 어느정도 자리를 잡으면 파이선을 공부해야겠다고 마음먹었고, 그 이후엔 c#을 배우고 싶었다.
절대 c, c++, java는 안해야지 생각했는데
요-기서 C로 강의를 해서 C를 배우게되었다.
절대 안해야지 생각한 영어도 엄청 열심히 하고,
절대 안하려던 알고리즘도 그렇게 열심히 한걸 보면..
절대 안하려던건 어쨋든 하게 되나보다.
변수를 설정하는 것,
import 를 하는 것,
매번 컴파일을 하는것 등 몇가지 빼고는
syntax(?)라고 하나? 코드를 작성하는 것은 js랑 비슷하다고 느꼈다.
파이선은 정말 다르다고 느꼈었는데 (작성법은)
c는 비슷했다. (||도 쓰고 &&도 쓰고 (){}도 쓰고 등등)
호이스팅에 대해서도 더 느낌이 왔다.
강의에서 교수님은 main함수를 맨 위에 넣고 싶으나,
main이 부르는 다른 함수들이 밑에서 작성되어있으면
에러가 생긴다고 했다. 왜냐, 위에서 아래로 좌에서 우로 코드를 읽기 때문,
그래서 함수의 설정부분( {}부분말고 ) 만 위로 올려서 fake하는 것이다.
js의 호이스팅이 이 부분을 자동으로 해주는 것이 아닐까 싶다.
왜 js가 호이스팅을 하는지 이 부분에서 이해하게 되었다.
(그러나 다들 함수는 아래서부터 위로 쌓아 만들지 않나..?)
오버플로우란, 저장할 수 있는(지정된) 데이터 이상의 값이 들어오면 생긴다.
예) int는 32비트이기 때문에 그 이상의 값을 저장할 수 없다.
오버플로우의 재밌는 사례들.