본문 바로가기
반응형

C4

[C] GCC와 CC의 차이점 GCC GCC(GNU Compiler Collection)는 가장 유명한 컴파일러 중 하나로 GNU 프로젝트의 일환으로 개발되어서 사용되고 있는 컴파일러이다. 이름(컴파일러 모음집)에서 알 수 있듯이 C 언어의 컴파일러만 포함되어 있는 게 아니라 C++, 자바 등을 컴파일할 수 있다. LINUX를 설치하면 함께 딸려오지만 다른 플랫폼에서도 이용 가능하다. GNU는 "GNU's Not UNIX"의 약자로 라이선스화 된 UNIX 소프트웨어들에 저항하며 전통적인 UNIX 소프트웨어들을 무료로 만들기 시작했다. GCC는 아래와 같은 특징을 가지고 있다. 무료 GCC 하나만으로 여러 가지의 프로그래밍 언어들을 컴파일할 수 있다 서로 다른 운영체제들과 호환이 가능하고, 다른 CPU 별로 서로 다른 코드를 생성해낸다.. 2021. 2. 12.
[C/C++] 지역변수/static 지역변수/전역변수 차이점(storage duration, scope) Storage duration/Scope 지역변수와 static 지역변수 그리고 전역변수들 간의 차이점을 알려면 먼저 storage duration과 scope라는 개념부터 알고 가야 한다. Storage duration: 변수를 저장하는 공간이 존재하는 기간으로써 변수를 위해 메모리가 할당되고 변수가 다 사용되었을 때 메모리가 해제되는 기간을 말함 Scope: 변수가 참조될 수 있는 범위를 의미함 지역변수(Local variable) C언어에서 지역변수(Local variable)란 아래와 같이 함수 내부에서 정의된 변수를 의미한다. #include int func(){ int local_variable = 3; // 지역변수 return local_variable; } int main(int argc.. 2021. 1. 26.
[C/C++] scanf의 작동원리 scanf()는 사용자의 입력을 특정 형식(format string)에 맞춰 읽은 뒤 변수에 값을 저장한다. 이 형식(format string)에는 일반적인 문자(ex. a, b, c, 공백 등)나 변환 문자(conversion specification)가 들어갈 수 있는데 어떤 값이 들어가느냐에 따라 작동하는 방법이 다르다. format string이 변환 문자로만 구성된 경우 아래와 같이 scanf의 format string이 변환 문자로만 구성된 경우를 살펴보겠다. scanf("%d%f", &intValue, &floatValue); 이런 경우 scanf()는 다음과 같은 순서로 작동한다. 사용자로부터 들어온 input string(string type)을 format string과 왼쪽부터 비교한.. 2021. 1. 24.
[C/C++] C언의 강점과 약점 강점 efficiency C언어는 애초에 assembly 언어를 사용하는 UNIX 운영체제를 위해 개발된 프로그래밍 언어이기 때문에 C언어는 빠르고, 효율적으로 메모리 자원을 활용할 수 있다. portability 보통 내가 만든 프로그램이 PC를 포함 안 다양한 디바이스에서 동작하게 만들고 싶을 때 주로 C언어를 사용한다. C언어의 이식성이 좋은 이유는 C가 초창기에 현재 많은 OS의 기반이 되는 UNIX를 위해 개발된 언어이고, ANSI/ISO에 의해서 표준화가 진행되었기 때문에 여러 갈래로 나누어지지 않았기 때문이다. 또한 C compiler 자체의 크기가 매우 작고 쉽게 적을 수 있기에 C언어는 높은 이식성의 강점을 지니고 있다. power C언어는 많은 data type과 operator들을 가.. 2021. 1. 10.
반응형