기타/문제해결기2017. 4. 7. 06:54

다음과 같은 소스파일이 있다고 하자.


A.cpp


void testMainFunction(){

#ifdef LittleEndian

cout<< "LittleEndian Action" << cout;

#else

cout<< "BigEndian Action" << cout;

#endif

}



B.cpp


#define LittleEndian


void testB(){

testMainFunction();

}


C.cpp


void testC(){

testMainFunction();

}



B와 C에서 같은 함수를 호출하지만 결과는 서로 다르다.

만약 어떤 MCU가 서로 다른 두 센서에 시리얼 포트로 데이터를 전송한다고 하자.

첫번째 센서가 LittleEndian으로 데이터를 수신하고 두번째 센서가 BigEndian으로 데이터를 수신한다면 위와 같은 방법을 이용하면 같은 각각의 센서에 대해 큰 변동없이 같은 함수를 호출하여 대응할 수 있다.

Posted by 십자성군