훈, IT 공부/C,C++,MFC

헝가리안 표기법이란

IT훈이 2018. 1. 4.
반응형

헝가리안 표기


헝가리안 표기법이란?


헝가리안 표기법은 구글의 개발자의 머리속에서 나온 것인데, 이 사람이 헝가리 사람이었다고 합니다...;;

이 개발자는 변수 속에서 용도가 드러나게 하라고 하였는데, 

여러사람을 거쳐 지다 보니 본질과는 많이 변하였다고 하더군요.. 

 컴퓨터 프로그래밍을 할 때, 변수 및 함수의 이름 앞에 데이터 타입을 명시하는 코딩의 규칙입니다.



코딩을 처음 접하시는 분들은 


"도대체 어떻게 변수 이름을 작성해야 하지 .... ㅠ ㅠ"


변수 명을 선택하느라 골머리가 아픈 경우가 많고 어렵습니다.


또한


코드는 문서이기 때문에 변수명을 잘 작성해야합니다. (변수명 뿐만 아니라..)


※ 모두가 볼 수 있어야 하기 때문이죠 





예를들어 간혹 코딩을 할 때, 아래와 같이 코드를 작성하게 됩니다. 


1
2
3
4
5
6
7
8
9
#include<stdio.h>
int main(void){
    
    char str1[15= {"Hello"};
    char str2[15= {0};
    char *strp = NULL;
    
    return 0;
}
cs

위의 코드는 제가 임의로 막 작성한 변수(식별자)들 입니다. 


다른 사람이 이 코드를 본다면 무슨 말인지 모르겠죠..??


그렇다면 아래의 코드를 살펴봅시다.


1
2
3
4
5
6
7
8
9
#include<stdio.h>
int main(void){
    
    char szBuffer[15= {"Hello"};
    char szData[15= {0};
    char *pszData = NULL;
    
    return 0;
}
cs


조금은 뭔가 있어보인다 그죠??!!


szData, szBuffer 등등 이런 식으로 변수 값을 주거나 할때, 


sz 가 무었인지 궁금하였다면, "String Zero"의 약자로써 문자열이 없다고 인식하시면 됩니다.


이러한 방법이 헝가리안 표기법입니다.



위의 표에 보이는 것 처럼 


"sz, psz , p" 이런 식으로 약자를 응용해서 사용하는 것 입니다.


다 뜻이 있는거였단 말입니다 ㅎㅎ




자세한 설명을 아래의 링크를 확인해주세요



헝가리안 표기법  <- 참고해주세요

반응형

댓글