C & C++/C in Linux

[C in Linux] gcc 그리고 unistd.h

  • -
728x90

gcc란?

gcc(GNU Compiler Collection), 자유 소프트웨어 중에 가장 잘 알려진 GCC는 원래 C만을 지원했던 컴파일러로 GNU C Compiler 였지만, 현재는 C++, Java, 포트란, 에이다 등 여러 언어를 컴파일할 수 있게 되면서, 현재의 이름으로 바뀌었다.

 

컴파일 방법  

$ gcc [파일 이름]

위 처럼 컴파일하게 되면, a.out 실행파일이 생성된다. 그 파일을 실행하면 컴파일한 파일의 결과를 볼 수 있다.  

 

$ gcc -o [실행 파일 이름] [파일 이름]

위 처럼 실행 파일 이름을 지정할 수 있다.  

 

$ gcc -o [실행 파일 이름] [파일 이름 1] [파일이름 2] ...

위 처럼 컴파일하게 되면, 여러 c파일을 #include 하지 않고 사용할 수 있다. main함수가 포함되지 않은 파일에 함수가 있다면, main함수가 포함된 파일에 함수 선언을 해주면 된다.  

 

예시

'main.c'  

void print_hello();

int main(void)
{
	print_hello();
	return 0;
}

'hello.c'

#include <stdio.h>

void print_hello(void)
{
	printf("Hello!\n");
}

 

gcc 상세 설명

 

gcc로 컴파일 하는 방법

해당 포스트는 이전한 블로그에서도 확인할 수 있습니다. https://eoriented.github.io/post/how-to-compile-using-gcc/ 1. gcc 동작 과정 - gcc 원래는 GNU C Compiler를 의미 했지만 1999년부터 GNU Compiler C..

seamless.tistory.com

 

unistd.h란?

POSIX 운영체제 API에 대한 액세스를 제공하는 헤더파일이다.  

 

unistd.h의 사용법에 대한 블로그

 

'C언어 header/unistd.h' 카테고리의 글 목록

행복한 개발자 programmer since 1995.

www.it-note.kr

 

read 함수

ssize_t read(int fd, void* buf, size_t nbytes);

fd : 파일 식별자

buf : 데이터를 저장하는 버퍼

nbytes : 읽어올 바이트 수

 

반환값

성공 : 읽은 바이트 수

실패 : -1

 

 

write 함수

ssize_t write(int fd, void* buf, size_t nbytes);

fd : 파일 식별자

buf : 데이터를 저장하고있는 버퍼

nbytes : 쓸 바이트 수

 

반환값

성공 : 파일에 쓴 바이트 수

실패 : -1

 

 

728x90
300x250
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.