728x90
반응형

컴퓨터/C

총 80개의 포스트

컴퓨터/C(80)

  1. C 언어 - 문자열 처리 함수(strlen, strcat, strcpy, strcmp)

    문자열을 처리하는 함수들 C언어에서는 문자열을 처리하기 위해서 기본적인 함수들을 제공하고 있습니다. 문자열을 처리를 하기 위해서는 C언어의 특성상 불편한 점이 많이 때문입니다. C언어에서는 이런 문자열을 처리하기 위한 String 라이브러리를 제공합니다. 이렇게 제공되는 함수들을 알아보고 사용법을 알아보도록 하겠습니다. String 라이브러리를 사용하기 위해서는 꼭 헤더파일인 String.h를 넣어주어야 합니다. strlen() 함수 C언어에서 strlen 함수는 String length를 의미합니다 즉, 문자열의 길이를 확인할 수 있는 함수입니다. 함수의 원형은 아래와 같습니다. #include size_t strlen(const char* s); //// strlen(문자열주소) --> 문자열의 길이..

    2021.06.30

    컴퓨터/C

    Commnet

  2. C 언어 - sizeof 함수

    프로그램이 쓰는 공간을 알아보자 - sizeof sizeof 함수는 프로그래머가 만든 소스코드에서 메모리 공간을 실제 몇 byte를 잡아먹고 있는지 확인하기 위한 함수입니다. C언어에서 기본적으로 제공되는 함수이며 이 함수를 통해 C언어에서 내가 사용하는 변수 , 자료형 등의 실제 byte를 알 수 있습니다. 추가적으로 다른 함수들에서 크기를 알아야 될 때에도 같이 사용하기도 합니다. 자료형의 크기 예전에 한번 언급한 적이 있었지만, 자료형의 크기(byte)는 어떠한 기준에 의해서 정해진 것입니다. 따라서 기준이 바뀐다면, 변화될 수도 있는 것입니다. (물론 매우 낮은 확률이겠지만) 또한 다른 언어들에서 동일한 자료형의 이름이여도 byte수가 다른 경우도 있을 수 있습니다. 프로그래머 자신이 사용하는 I..

    2021.06.29

    컴퓨터/C

    Commnet

  3. C 언어 - 함수의 원형 선언

    C 언어에서의 함수 C언어에서는 함수와 함수들이 서로 호출하는 형태로 프로그램이 구동됩니다. 프로그래머들을 C언어에서 함수를 사용하기 위해서 선언과 정의를 하고 그 함수를 호출하여 사용합니다. 외부 소스코드에서 작성된 함수를 사용하기 위해서는 extern 키워드와 함께 함수의 원형을 설명해 주어야 사용 가능합니다. 그렇다면 동일한 내부 소스코드에서 함수의 정의와 선언은 어떻게 이루어질까요? #include void printintro() { printf("함수에서 함수를 호출 할 때 문제 발생"); println(); // 아래에서 정의된 println함수를 호출 } void println() { printf("\n"); } int add(int a, int b) { return a + b; } int ..

    2021.06.29

    컴퓨터/C

    Commnet

  4. C 언어 - 소스파일 나누기

    소스코드 파일 분할의 이유 프로그래머가 프로그램을 만드는 것도 중요하지만 그 프로그램을 유지 보수하는 것 또한 매우 중요한 일입니다. 만약에 엄청나게 큰 프로그램을 만들어서 소스코드가 몇천 줄이 넘는 프로그램을 만들었다 가정해 봅시다. 그리고 특정 부분들을 수정해야 되는 일이 생겼다면 찾아가서 유지 보수하는 것은 쉬운 일이 아닐 것입니다. 그래서 다양한 방법으로 소스코드를 구분하여 분할하고 효율적으로 관리할 수 있게 습관을 들일 필요가 있습니다. 이런 행위를 모듈화라고 많이들 말하며 좋은 프로그래머의 필수 항목 중 하나입니다. 소스코드 파일 분할 방법 소스코드를 분할하는 방법은 크게 2가지가 있습니다. 라이브러리화 여러 소스코드 파일로 분할 본문에서는 여러 소스코드 파일로 분할하는 것을 익혀보도록 하겠습..

    2021.06.28

    컴퓨터/C

    Commnet

  5. C 언어 - static 키워드 (정적 키워드)

    static 키워드 static은 사전적 의미로 정적이다라는 의미를 가지고 있습니다. 말 그대로 static 키워드를 사용하면 움직이지 않는 정적인 변수를 만들 수 있습니다. 복습 - 지역변수와 전역변수 지역변수 - 지역변수는 지역에 존재하는 변수로 메모리 stack영역에 저장되며 중괄호 { } 안에 포함된다. 전역 변수 - 전역 변수는 프로그램 모든 곳에서 쓰이며 메모리 data영역에 저장된다. 지역 변수와 전역 변에 static 키워드가 붙으면? 지역 변수와 전역 변수의 개념을 이해하고 있다면, 여기에 정적인 의미를 가진 static을 연결하면 어떻게 되는지 알아보겠습니다. 정적 전역변수 int g_a = 1; static int g_sa = 1; int main() { return 0; } 정적 전..

    2021.06.26

    컴퓨터/C

    Commnet

  6. C 언어 - Stack Frame (스택 프레임)

    스택에 대한 개념 먼저 알아보기 자료구조 - Stack(스택)의 개념 Stack(스택) Stack은 사전적 의미로 쌓다, 포개다, 채우다를 의미합니다. 자료구조 개념의 하나인 Stack은 바로 쌓아 올리는 개념입니다 한번 쌓아 올리다를 상상해 볼까요? 이사를 하기 위해 박스 안 blog-of-gon.tistory.com 메모리 스택 영역 메모리의 구조는 크게 코드 영역 / 데이터 영역 / 힙 영역 / 스택 영역이 있습니다. 이 중 스택 영역은 함수의 호출 시 함수의 지역변수와 매개변수가 저장되는 영역입니다. 이 스택 영역에서 함수들의 정보를 쌓고 처리하는 것을 스택 프레임이라고 합니다. C언어 프로그램의 구조는 스택 프레임 구조. C언어 프로그램은 다양한 함수들을 호출하면서 프로그램이 실행됩니다. 함수가..

    2021.06.26

    컴퓨터/C

    Commnet

  7. C 언어 - 다중 포인터

    다중 포인터 어느 정도 포인터의 개념이 익숙해졌다면, 다중 포인터에 대하여 알아보겠습니다. 다중 포인터란 포인터를 담는 포인터의 개념입니다. 포인터를 정확하게 이해하고 있으면 다중 포인터의 개념을 이해하는 데는 문제가 없을 것입니다. 다중 포인터의 선언과 사용 해기 보기 다중 포인터는 포인터 변수를 선언하는 *의 개수로 몇 중 포인터인지 선언을 합니다. 예를 들어 2중 포인터의 선언은 다음과 같습니다. int val; // 일반 변수 int* p; // 1중 포인터 변수 int** pp; // 2중 포인터 변수 3가지 변수에 대하여 특징을 다시 한번 정리해 보자면 다음과 같습니다. 일반 변수 val 일반 변수는 할당된 메모리 주소 안의 데이터를 사용할 수 있습니다. 1중 포인터 변수 p 포인터 변수 p ..

    2021.06.24

    컴퓨터/C

    Commnet 2

  8. C 언어 - 구조체 포인터

    구조체 포인터 사용자 정의 자료형인 구조체도 포인터 변수를 통해 제어를 할 수 있습니다. 구조체 포인터를 사용하면 다른 포인터 변수들처럼 다른 지역에서 해당 지역에 있는 변수를 제어를 가능하게 합니다. 기본 자료형 포인터의 경우 저장된 메모리 주소 부터 자료형의 크기까지의 메모리 공간을 제어할 수 있습니다. 하지만 구조체의 경우 사용자 정의 자료형이며, 여러가지 자료형이 묶여서 만들어진 형태입니다. 포인터를 사용하여 구조체 안의 묶여있는 각각의 자료형에 접근을 할수 있는 문법적 약속이 필요합니다. 구조체 포인터의 선언 구조체 포인터의 선언은 기본 자료형 포인터와 동일합니다. typedef struct Job { char name[10]; int att; int HP; }JOB; int main() { J..

    2021.06.23

    컴퓨터/C

    Commnet

  9. C 언어 - typedef 키워드

    typedef 키워드 - 타입을 재 정의하다. 이제 C언어에서 사용하는 모든 자료형을 다 배웠습니다. 이 자료형에 부여된 이름은 C언어 안에서 메모리 공간을 어떤 방식으로 얼마큼 할당할 거냐에 대한 약속된 키워드입니다. 자주 쓰는 자료형들은 사용자에게 익숙할 수 있지만 자주 쓰지 않거나 생각보다 입력해야 될 것이 많은 키워드들이 있습니다. 이런 키워드들을 사용자가 원하는 이름으로 재정의하여 사용하기 위한 키워드가 typedef입니다. typedef키워드를 잘 사용한다면 불필요한 타이핑을 줄이며 조금 더 효율적인 소스코드를 작성할수 있습니다. 기본 자료형에 typedef 어떠한 프로그래밍을 하는데 가장 좋은 자료형이 unsinged cahr 라고 가정을 해봅시다. 그리고 이 프로그램에 unsigned ch..

    2021.06.22

    컴퓨터/C

    Commnet

  10. C 언어 - struct(구조체)

    struct(구조체) - 사용자 정의 자료형 C언어에서는 struct라는 키워드를 이용해서 구조체 즉 사용자가 원하는 자료형을 만들 수 있습니다. 구조체를 사용하면 여러 자료형들을 조합하여 자신이 원하는 자료형을 만들고 사용할수 있습니다. 구조체의 장점은 무엇인가? 여러 자료형을 묶어서 하나의 자료형으로 만든다는 것은 컴퓨터에 입장에서는 별반 차이가 없을 수 있지만, 사람에게는 엄청난 이점으로 다가옵니다. 예를 들어 게임의 플레이어의 직업을 만드는 프로그래밍을 한다고 가정해 보겠습니다. 4가지의 직업과 각각의 직업에는 직업명, 공격력, 체력이 있다고 가정해 보도록 하겠습니다. 이전에 배운 기술들을 종합하여 프로그래밍을 하면 다음과 같이 할 수 있을 것입니다. char name1 = "전사"; int at..

    2021.06.22

    컴퓨터/C

    Commnet

G91개발일지

Gon91(지구일)

91년생 공학엔지니어의 개발일지

TODAY :

YESTER DAY :

TOTAL :

1 2 3 4 5 6 7 8
728x90
반응형