달력

4

« 2020/4 »

  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  •  
  •  
2020. 3. 29. 20:06

함수의 종류 Development/C/C++


 

 

함수의 종류

구분

설명

표준 라이브러리 함수

·         C 언어에서 제공

·         JAVA 언어에서 제공

·         Python 언어에서 제공

사용자 정의 함수

·         사용자가 직접 만든 함수

 

 

'Development > C/C++' 카테고리의 다른 글

함수의 종류  (0) 2020.03.29
VSCode - C/C++ Extension - install(설치하기)  (0) 2020.03.22
매개변수(parameter)  (0) 2020.03.17
ASCII (아스키), ASCII Code(아스키코드)  (0) 2020.03.17
주석문 (Comment), 주석문의 종류  (0) 2020.03.17
중첩 구조체  (0) 2020.03.16
Posted by codedragon codedragon

댓글을 달아 주세요



 

 

 

C/C++ Extension - install

 

·         .c/.cpp 파일 오픈을 통한 설치

·         Extensions 실행을 통한 설치

·         C/C++ Extension 설치

 

 

 

 

.c/.cpp 파일 오픈을 통한 설치

.c/.cpp 파일을 오픈하면 우측 하단에 권장 설치 메시지가 오픈됩니다.

우측하단의 [Install] 버튼 클릭


 

 


 

 

 

 

 

 

or

Extensions 실행을 통한 설치

 

VSCode 메뉴: [View] >> [Extensions] >>

"C/C++" 검색합니다.

C/C++


 

 

"Microsoft" 되어져 있는 항목을 클릭합니다.


 

 

[Install] 클릭


 

 

 

 

 

 

 

C/C++ Extension 설치

설치 ...


 

 

 

설치 완료!!!


 


'Development > C/C++' 카테고리의 다른 글

함수의 종류  (0) 2020.03.29
VSCode - C/C++ Extension - install(설치하기)  (0) 2020.03.22
매개변수(parameter)  (0) 2020.03.17
ASCII (아스키), ASCII Code(아스키코드)  (0) 2020.03.17
주석문 (Comment), 주석문의 종류  (0) 2020.03.17
중첩 구조체  (0) 2020.03.16
Posted by codedragon codedragon

댓글을 달아 주세요


 

매개변수(parameter)

·         메소드 호출시 넘겨주는 데이터() 의미합니다.

·         함수를 호출하면서 함수가 처리하도록 입력으로 넘겨주는 값입니다.

·         함수를 호출할 인수(인자;argument) 전달된 값을 함수 내부에서 사용할 있게 해주는 변수입니다.

·         메소드 외부에서 메소드 내부로 데이터를 전달하는 매개체 역할하며 매개변수도 "변수(지역 변수)"입니다.

·         함수를 호출하는 쪽과 호출된 함수를 연결하는 매개가 되는 변수입니다.

·         메소드 호출시 변수에 저장된 데이터를 다른 변수에 데이터만 복사하여 저장합니다.

 


'Development > C/C++' 카테고리의 다른 글

함수의 종류  (0) 2020.03.29
VSCode - C/C++ Extension - install(설치하기)  (0) 2020.03.22
매개변수(parameter)  (0) 2020.03.17
ASCII (아스키), ASCII Code(아스키코드)  (0) 2020.03.17
주석문 (Comment), 주석문의 종류  (0) 2020.03.17
중첩 구조체  (0) 2020.03.16
Posted by codedragon codedragon

댓글을 달아 주세요


 

ASCII(아스키)

·         American Standard Code for Information Interchange(미국 정보 교환 표준 부호)

·         영문 알파벳을 사용하는 대표적인 문자 인코딩

·         1962 ANSI(미국 국가표준 협회) 정의한 미국 표준 정보교환 코드

·         문자 하나를 7비트로 표현하므로 이진수 조합으로 만들어진 128개의 부호를 표현할 있는 코드입니다.

·         아스키 코드는 7bit(1 byte) 영문자와 숫자, 그리고 일부 특수문자들만을 표현합니다.

 

 

https://ko.wikipedia.org/wiki/ASCII

https://en.wikipedia.org/wiki/ASCII

 


Posted by codedragon codedragon

댓글을 달아 주세요


 

주석문 (Comment)

https://codedragon.tistory.com/6216

 

 

 

 

 

주석문의 종류

주석종류

의미

설명

//주석문

·         단행 주석

·         행단위 주석

·         주석

·         현재 행에서 // 뒤의 문장 전체를 주석으로 처리합니다.

·         C, C++, C#, Java, R, …

/*주석문*/

·         다행 주석

·         블록단위 주석

·         여러 주석

·         /* */사이의 여러 문장을 주석으로 처리합니다.

·         주로 개발자들이 소스에 기록을 남기거나 참고하기 위하여 작성합니다.

/**주석문*/

·         HTML 문서화 주석

·         JAVA 문서화 주석

·         /** */사이의 문장을 주석으로 처리합니다.

·         주석을 이용하여 HTML 형태의 API문서 페이지를 생성합니다.

·         javadoc.exe

 

 

 

 

 

HTML 주석(<** ~ *> ) 문서 작성 실행파일

C:\Program Files\Java\jdk1.7.0_51\bin\javadoc.exe

 

 

 


Posted by codedragon codedragon

댓글을 달아 주세요

2020. 3. 16. 05:46

중첩 구조체 Development/C/C++


 

중첩 구조체

·         구조체 내에 구조체가 포함되어져 있습니다.

·         구조체 변수를 멤버변수로 사용합니다.

 

 

 

 

 

 

중첩 구조체 초기화

방법1

struct 구조체명 구조체변수명={ {}};

 

방법2

//{}(중괄호생략 가능

struct 구조체명 구조체변수명={ };

 

 


Posted by codedragon codedragon

댓글을 달아 주세요

   

랜덤 접근 함수 fseek()함수

   

함수원형

함수 원형

설명

헤더파일

int fseek(FILE* stream, long offset, int start);

  • start부터 offset까지 스트림을 이동시킵니다.
  • 성공 : 0 반환
  • 실패 : 0이 아닌 값 반환

stdio.h

   

세 번째 인자 start

기호 상수

설명

SEEK_SET

0

파일의 시작 위치

SEEK_CUR

1

파일의 현재 위치

SEEK_END

2

파일의 위치

   

   

파일 이동 도식도

fseek(stream, 0, SEEK_SET);

   

   

   

fseek(stream, 2, SEEK_SET);

   

   

fseek(stream, -1, SEEK_END);

   

   

   

SEEK_CUR의 위치

   

   

fseek(stream, -2, SEEK_CUR);

   

   

랜덤 접근 함수 ftell()함수

현재의 파일 위치가 파일의 시작부터 얼마나 떨어져 있는지를 확인

   

   

함수원형

함수 원형

설명

헤더파일

long ftell(FILE* stream);

  • 파일 포인터 stream의 위치를 확인
  • 성공 : 파일 포인터의 위치 반환
  • 실패 : EOF 반환

stdio.h

   

   

   

Posted by codedragon codedragon

댓글을 달아 주세요


 

calloc( )함수를 이용한 동적 메모리 할당

메모리를 할당하면서 초기화 경우 calloc()함수 사용

종류

함수

반환

메모리

할당 함수

void* calloc(size_t num, size_t size);

 

성공: 할당된 메모리의 시작 주소 반환

실패: NULL 반환

 

 

 

 

calloc( ) 함수 vs malloc( ) 함수

동일한 함수 이며 입력 인자의 개수만 차이가 있습니다.

calloc( )

malloc( )

할당된 공간의 값을 모두 0으로 초기화합니다.

할당할 메모리 크기를 바이트 단위로 전달받고, 할당된 공간의 값들은 초기화하지 않습니다.

//함수의 입력 인자 2

int* p1 = calloc(4, 4);

//함수의 입력 인자 1

int* p2 = malloc(16);

//int형을 배열처럼 5개씩 메모리 할당

(int *)calloc( 5, sizeof(int) );

(int *)calloc( 1, 5*sizeof(int) );

//int형을 배열처럼 5개씩 메모리 할당

(int *)malloc( 5*sizeof(int) );

 

 


Posted by codedragon codedragon

댓글을 달아 주세요


 

 

동적 바인딩 vs 정적 바인딩

구분

정적 바인딩(Static Binding)

동적 바인딩(Dynamic Binding)

지연 바인딩(Late Binding)

정의

컴파일 단계에서 모든 바인딩이 완료되는

반대로 바인딩이 실행 까지 연기되고 실행 시간에 실제 호출되는 함수를 결정하는

시점

프로그램 실행 시간 전에 속성을 연결하는 방식

프로그램 실행 시간에 속성을 연결하는 방식

대상

일반함수

가상함수

속도

빠르다

느리다

 

 


Posted by codedragon codedragon

댓글을 달아 주세요


 

C 언어 특징

·       저수준(low-level)

·       고이식성 언어로 설계

·       함수 중심적인 언어, 절차지향적인 언어

·       다른 언어를 배우기 위해

·       시스템 프로그래밍 가능(하드웨어를 제어/접근하는 프로그램)

·       C 언어는 기계어와 가장 근접한 언어인 만큼 C 언어에 있어 컴퓨터/시스템 구조 지식은 필수

·       임베디드 프로그램, 로봇제어

·       자료유형에 대해 엄격한 언어가 아닙니다.

 

 

 

 

C언어 계열(C, C++, C#) 장단점

구분

설명

장점

·       어셈블리어 같은 저급 언어와 유사한 기능을 제공

·       구조적 프로그래밍을 통해 프로그램을 읽기 쉽고 작성하기에도 쉬운 언어

·       프로그램의 이식성과 융통성이 뛰어난 언어

·       기존에 작성한 C언어 코드를 거의 대부분을 수정없이 C++ 언어로 확장할수 있어 다양한 운영체제에서 사용가능

 

단점

·       C언어는 객체 지향 개념이 없습니다.

·       C++언어는 방대한 기능 제공하고 복잡함으로 인해 안정성이 떨어지며 C언어와의 호환성을 강조하다보니 새로운 기능을 추가하는데 제한이 있습니다.

·       C#언어는 JAVA언어에 비해 활성화가 되지 못해 저변확대가 부족합니다.

 

 

 

 

 

 

C vs JAVA

C

함수 중심적인 언어, 절차지향적인 언어입니다.

C++

C#

JAVA

객체 지향 언어입니다.

 

 


Posted by codedragon codedragon

댓글을 달아 주세요