본문 바로가기
반응형

언어16

[C 언어] 13. 구조체 구조체는 서로 다른 데이터 타입들을 함께 모아 놓은 것입니다. 각각의 원소들을 member라고 부릅니다. 구조체의 선언은 다음과 같이 합니다. struct student { //struct student 타입 정의 int id; char name[10]; }; struct는 키워드 이고 student는 구조체의 이름입니다. 구조체의 타입은 여기서 struct student 타입으로 정의한 것입니다. 구조체를 선언하고, 구조체 변수를 한번에 선언할 수 있습니다. struct student { //sruct student 타입 정의 & 변수 선언 int id; char name[10]; } a1, a2, a3; 구조체를 선언함과 동시에 struct student 타입의 a1, a2, a3라는 구조체 변수는 .. 2024. 4. 14.
[C 언어] 12. File File fopen은 데이터를 송수신하기 위해 파일과 스트림을 생성합니다. 파일에 어떠한 짓을 하려면 open을 먼저 해주어야합니다. open은 파일에 접근하기 위한 정보를 메모리에 올립니다. FILE* fopen(cosnt char* filename, const char* mode) 파일의 오픈 모드는 파일 접근 모드와 데이터의 입출력 모드를 말합니다. 파일의 접근 모드는 다음과 같이 있습니다. r : 읽기, 먼저 파일이 있어야 합니다. w : 쓰기. 빈 파일을 생성합니다, 파일이 없으면 생성합니다. a : 마지막에 이어 쓰기, 파일이 없으면 생성합니다. r+ : 읽기, 쓰기, 파일이 있어야 합니다. w+ : 읽기, 쓰기, 빈 파일 생성, 파일 없으면 생성 a+ : 읽기, 마지막에 쓰기, 파일 없으면 .. 2024. 4. 14.
[C 언어] 11. Input/Output Stream, String Input/Output Stream 스트림이란 데이터를 송수신하기 위한 통로의 개념입니다. 가까운 예시로는 OTT스트리밍이나, 음악 스트리밍이 있습니다. 스트림은 데이터가 연속으로, 순서대로, 시리즈로 전송, 저장되는 것을 말합니다. 스트림에는 2가지가 존재하는데 하나는 binary stream으로 영상물이 여기에 해당하고, 다른 하나는 text stream으로 소스코드가 여기에 해당합니다. C언어에서 스트림의 데이터 타입은 FILE*로 file pointer로 지칭합니다. 스트림을 읽고 쓸 정보가 필요합니다. 이러한 정보를 FILE은 스트림 연결에 관한 내부의 상태정보를 저장합니다. 정보는 3가지를 저장합니다. 첫 번째로 file position indicator입니다. 말 그대로 파일의 위치를 지정하.. 2024. 4. 14.
[C 언어] 10.포인터 (찾는 내용이 있으시다면 Ctrl + F를 눌러 원하는 내용을 찾아주세요.) 포인터 포인터는 주소값을 저장하기 위한 변수입니다. 포인터의 선언은 다음과 같이 합니다. int *x; int a; x = &a 이렇게 선언한다면 데이터형이 int인 포인터형을 선언한 것입니다. 포인터는 주소를 저장하는 변수이기 때문에 변수의 주소를 반환하는 연산자 &를 사용하여 변수의 주소값을 할당합니다. *은 참조 연산자로 포인터가 가리키는 주소에 저장 되어있는 값을 참조합니다. 이때의 *은 포인터를 선언했을 때의 *와는 다릅니다. 포인터 변수의 크기는 사용하는 컴파일러마다 다릅니다. 개발환경이 32비트면 포인터의 크기도 32비트, 64비트이면 64비트 입니다. 포인터 사용의 예시를 보겠습니다. #include int mai.. 2024. 4. 14.
[C 언어] 9. 함수 함수 한마디로 설명하면 특정 작업을 수행하기 위해 변수들의 선언과 명령들이 포함된 독립적인 묶음입니다 C 프로그램은 하나 이상의 함수들로 구성되어 있습니다. 그 중 하나가 main함수입니다. 함수는 호출되면 호출하는 함수로부터 통제를 받습니다. 호출된 함수는 자신의 작업을 수행하고 나면 호출한 하무에게 되돌아가며 이때 결과 값(return)을 반환합니다. 혹은 안할 수도 있습니다. 프로그램은 항상 main에서 시작하고, main은 차례로 다른 함수를 호출합니다. main함수는 모두 수행한후 운영체제로 돌아가서 프로그램은 종료됩니다. -함수 사용의 장점 문제를 분리하여 단순화 시킬 수 있습니다. 함수는 한 곳 이상에서 코드를 재사용 할 수 있습니다. 이미 제공되어 있는 library를 통해 사전에 필요한 .. 2024. 4. 14.
[C 언어] 8. 배열 배열 배열은 같은 데이터 타입의 변수의 집합입니다. 배열은 배열의 원소들을 저장할때 실제로 인접한 메모리 위치를 사용합니다. 또한 배열은 초기화 할때 특별한 값으로 초기화하지 않는다면 0이나 NULL로 초기화 해주는게 좋습니다. 배열의 선언은 다음과 같습니다. 자료형 변수명[요소개수]; int a[10]; //int array char b[10]; //char array (i.e. string) 위와 같이 int a[10]으로 선언한다면 데이터 타입이 int인 변수가 메모리 상에 연속적으로 10개가 붙어서 생성됩니다, a[i]라고 한다면 i번째 인덱스에 접근한다는 의미입니다. 배열의 인덱스는 0부터 시작합니다. 따라서 마지막 인덱스는 배열을 선언할때 []에 써준 숫자보다 1 작은 수 입니다. 그렇다고 인.. 2024. 4. 14.
반응형