[C] C lang 구조체, 공용체, 함수 포인터
구조체, 구조체의 필요성 구조체란(structure) 1 . 클래스를 배우러 가는 과정에서 여러가지 형의 데이터만 모아둔 아이 2 . 클래스를 배운 뒤, 참조형이 아닌 값형인 커스텀 데이터형 C에서 구조체는 첫번쨰…
[C] C lang 콘솔 입력, 파일 입출력, 커맨드 라인 인자
입력 출력의 반대 외부의 데이터를 읽어와서 프로그램에서 사용 어떤 데이터가 올 지 몰라서 괴상한 데이터가 종종 들어옴. 사용자가 잘못된 데이터를 키보드에서 입력 예전에 저장해 둔 파일을 누가 잘 못 바꿨거나 일부…
[C] C lang 문자열
문자열의 표현과 길이 C에는 자체적으로 문자열이 없다. 그래서 char 형 배열을 계속 사용. 물론 이걸 대신 문자열처럼 표현하는 방법들이 있다. 이게 C스타일 문자열. C에선 가장 기본적인 것들이고, 면접 볼떄…
[C] C lang 포인터
포인터 우리가 알던 메모리 저장 과정 나도 주소를 사용해서 메모리에 있는 내 변수에 접근이 가능한가? 다른 언어였다면 얼토당토 않은 일 그러나 C는 하드웨어와 가장 친한 친구 그러므로 가능함 그리고 이걸 잘 쓰면…
[C] C lang 실행과정
C 프로그램에서의 빌드 과정 빌드란 사람이 읽기 쉬운 명령어를 기계어로 변경하는 과정 명령어들을 모아 기계에서 실행 가능한 파일로 만드는 것. C의 빌드란(과정 전체 통틀어서 빌드라 일컫는다.) 1. 전처리 2…
[C] C lang 기본문법2
함수 C의 함수 선언은 C 과 거의 동일 다만 C는 접근 제어자(예: public, private 등)가 없음. C의 함수는 기본적으로 모두 전역(global)함수 즉, C의 함수는 어디서든 호출할 수 있음. 물론…
[C] C lang 기본문법
include, stdio.h C 에서 using 지시문(directive)과 비슷한 일을 한다. 다른 파일에 구현한 함수나 변수를 사용할 수 있게 해줌.(다만, C 처럼 알아서 함수나 변수를 찾아주지는 않음.)…
[Git] Changes not staged for commit 에러 원인과 해결
정상적으로 쓰던 레포지토리에서 갑자기 Changes not staged for commit 에러가 뜨는 경우, 원인별 해결 방법을 정리한다. (파일 잠금·중첩 .git 두 케이스)