본문 바로가기
  • 산에서 자라는 아침의 나무
  • 산에서 자라는 아침의 나무
반응형

Programming/C & C++12

C99, C11에서 변경된 점 C99에 추가되거나 변경된 기능C99는 다음과 같은 기능들을 포함하고 있다. 이들 중 일부는 이미 일부 컴파일러에 확장 기능으로서 포함된 적이 있다. 인라인 함수의 도입변수의 선언은 더 이상 파일 범위나 복합 명령어의 시작에서만 할 필요가 없다.long long int, 선택적인 확장 정수형, 명시적 불린 자료형, 그리고 복소수를 나타내기 위한 complex 자료형 등 새로운 자료형 도입가변 길이 배열(VLA: variable-length array)float read_and_process(int n){ float vals[n]; for (int i = 0; i < n; i++) vals[i] = read_val(); return process(vals, n);}BCPL이나 C++와 같은 //로 시작하는.. 2017. 10. 23.
ssize_t, size_t 그리고 pid_t ssize_t, size_t, pid_t 는 고전적인(primitive) 자료형이라 한다. 일반적으로 헤더에 선언되어 있는데, 사실 C의 typedef 선언을 통해서 정의되어 있다. 즉 새롭게 등장한 것이 아니라, 잘 알고 있는 int, float, long과 같은 기본 자료형을 가지고, 이름만 바꾸어 정의해 놓은 것이다. 이러한 자료형들은 꽤 오래 전부터 존재하고 있엇다. 그렇다면 도대체 왜 이러한 것을 정의해 놓고 사용하는 것일까?? int, short, float 라고 하면 사용하기 편할 텐데... 지금은 int가 32비트라고 한다. 보편적으로 사용되는 운영체제와 컴퓨터가 32비트이기 때문이다. 과거 16비트 시설에는 int가 16비트였고 곧 64비트 시대가 도래 할 것이다. 즉, 시스템에 따라서 .. 2017. 10. 22.
C 와 C++에서 구조체 정의의 차이점 C 와 C++에서 구조체 정의의 차이점 typedef struct { int data; int text;} S1;// S1을 자료구조(typedef) 구조체로 정의한다. C와 C++에서 사용가능하다. struct S2 { int data; int text;};// S2를 자료구조(typedef) 구조체로 정의한다. 이것은 C++에서만 사용하며, C에서는 에러가 발생한다. 위의 S1, S2의 방식으로 자료구조형으로 구조체를 정의한 경우 다음과 같이 변수를 선언해 줘야 한다. struct S1 AAA;struct S1 BBB, CCC;struct { int data; int text;} S3;// 구조체 변수 S3를 선언한다.// S3는 위의 S1, S2와는 완전히 다르다.// S3는 자료구조(typedef.. 2017. 10. 22.
Application development on AIX http://www-903.ibm.com/kr/techinfo/pseries/tech/tech_16.html김세희 kseh@kr.ibm.com어떤 UNIX시스템에서도 원시코드로부터 프로그램을 개발하여 이것을 실행할 수 있도록 실행 가능한 프로그램을 만들고 프로그램의 오류를 수정해 나가는 과정은 비슷하다고 할 수 있다. AIX에서는 일반적으로 사용하는 Open Source Environment가 아닌 AIX고유의 개발툴을 사용하므로, AIX에서 개발이나 포팅 작업을 하려는 사용자는 각각의 개발툴의 이름을 숙지하고 명령어 사용법을 알아두어야 할 필요가 있다. 그러나 전혀 다른 환경은 아니므로, 만약 Open Source Environment에 익숙한 개발자라면 AIX의 개발환경에 익숙해지는데 그다지 오랜 시.. 2017. 10. 22.
반응형