Language

    [C언어] limits.h

    프로그래머로써 프로젝트 진행시 코딩을 하다보면, 최소값이나, 최대값을 구하는 일은 다 반사다. 하지만, 어떠한 두 값을 비교할 때 가끔 문제와 마주치는 경우가 있다. 순차적으로 비교할 시 최초의 값을 비교할려는 변수의 값을 얼마로 초기화해야 할지 모를 때 이다. 이때 limits.h를 사용하면 굉장히 간편하게 해결할 수 있다. 자신이 선언한 자료형의 범위를 값으로 알려주므로, 굉장히 쉽게 초기값을 정할 수 있다. 만약 자신이 구하고 싶은게 최대값이다. 그래서 초기값을 0으로 했다면...?? 그런데 만약 최대값이 음수라고 해보자. 그렇다면 자신이 원하는 값이 아닌 초기값은 0 이 될 것이다. 자신이 어떠한 값을 초기값으로 놓아야 좋은가에 대한 문제를 쉽게 해결해 준다. limits.h 는 c언어의 표준 라..

    [Java] Static Method(정적 메소드)

    어떠한 클래스의 인스턴스 없이 함수를 호출하는 방법이 있을까? 정적 메소드는 객체 레퍼런스 변수 대신 클래스 명을 이용하여 호출한다. 특정 인스턴스 변수값에 의존하지 않는 유틸리티 메소드는 정적 메소드로 만드는 것이 좋다정적 메소드에서는 특정 인스턴스와는 연관되지 않기 때문에 어떤 인스턴스 변수값도 사용할수 없다정적 메소드가 아닌 메소드는 보통 인스턴스 변수 상태와 연관 되어있기 때문에 정적 메소드에서는 정적 메소드가 아닌 메소드는 사용할수 없다 정적 메소드만 들어 있는 클래스가 있다면 그 클래스의 인스턴스를 만들필요가 없기 때문에 그 생성자를 private 로 지정하는 것이 좋다

    Eclipse UML Plugin

    Eclipse UML Plugin

    많은 사람들이 개발 IDE로 Eclipse를 사용하고 있습니다.여기서 자신이 만든 프로젝트를 UML로 표현하기 편한 Eclipse Plugin을 소개할려고 합니다. 제가 사용하고 있는 것 중 하나인 Amateras UML Plugin이다. 먼저 아래 UML로 들어간다.http://sourceforge.jp/projects/amateras/releases/ 여기서 약간만 내려가다 보면 AmaterasUML 이 있다. 다운 받은 후 압축을 풀자. 압축을 풀면 아래와 같은 파일이 있을 것 이다. jar 파일들을 복사하여 ..../eclipse/plugin/ 디렉토리 안에 붙여넣으세요.그럼 준비 끝 !! 이제 한번 시작해 보겠습니다. Eclipse 를 실행합니다. 실행 후 프로젝트를 만들 때 new-other을..

    텍스트 파일 한줄씩 입력받기.

    #include #define N 100 //입력받을 데이터 크기 void main(){ FILE *pfile; char str[N]; fp = fopen("data.txt", "r"); // 파일 열기 while(!feof(pfile)) // 파일의 끝이 아니라면 { fgets(str, 80, pfile); // 최대 80칸짜리 한줄 읽기 puts(str); // 한줄 출력 } fclose(pfile); }

    C에서 예외처리 하기

    모두가 알고 있듯 C에서는 예외처리라는 것이 불가능하다고 알고있다. 예외처리가 C표준이 아니기 때문이다. 하지만 C 코드의 이식성을 무시해도 되는 상황이라면 C에서의 예외처리 방식은 매우 유용한 방법이 될 수 있다. __try{//////}__finally{/////} 이러한 방식을 적용하면 C에서 개발자들이 자주 놓치게 되는 메모리 해제에 대한 문제를 해결할 수 있다. int *ptr = NULL; __try{pi=(int*)malloc(sizeof(int));*pi = 5;}__finally{free(pi)} 위와 같은 방식으로 사용하면 free함수의 실행이 항상 보장된다. 참고문헌 : Understanding and Using C Pointers

    [C언어] 동적할당한 메모리 크기 알기

    C언어를 이용하여 코딩을 하다보면, 메모리를 동적할당하여 많이 사용하게 된다. 이 때, 동적할당 된 메모리 크기를 알고 싶은 경우가 있는데, 그 경우, 여러방법을 사용하는데, 그 중 가장 간편하게 제공되는 함수를 이용하면 편하다. malloc.h 를 포함한 다음, size_t _msize(void *p) 를 이용하여 크기를 구한다. 예제) int *a = (int*)malloc(sizeof(int)*40); printf("크기 %d\n", _msize((void*)a) / sizeof(int)); free(a);