전체 글 139

레퍼런스에 관하여!!

래퍼런스란? 레퍼런스를 알기 전에 변수를 만든다는것은 무엇을 뜻하는걸까요? 생각해보셨어요? 저 이렇게 생각합니다. 대상체 형에 따라 메모리가 할당되는데 그 공간을 변수이름이라고 정의한다고 생각합니다. 제가 말 재주가 없어서 int a 라고 선언하면 이렇게 4바이트가 메모리 할당 됩니다 이 공간 전체를 a 라고 정하자 라는거죠 그럼 이제 부터 레퍼런스에 대해 들어가겠습니다. -> 래퍼런스란 변수가 선언 된 공간을 다시 또 다른 이름으로 선언 하겠다는것입니다. 즉 제 2의 이름을 가진다는거죠 int &p = a; 라고 하면 a라는 변수 공간을 p라고 또 다른 이름을 정의하는겁니다. 그럼 이러면 머가 좋을까요? 기능은 포인터랑 같지만 포인터는 연산이 가능하지만 레퍼런스는 연산이 가능하지 않는다 다른 주소 접근..

카테고리 없음 2011.10.05

도움이 되는것들<변수선언하고 주소값이 더 증가되는이유>

Visual Studio 2005의 새로운 보안 기능 Brian Johnson Program Manager Microsoft Corporation 요약: Visual Studio 2005는 개발자가 보다 손쉬운 방법으로 보안 응용 프로그램을 작성할 수 있게 해 줍니다. 관리되지 않는 안전한 코드를 작성하거나, CAS(코드 액세스 보안)를 사용하는 관리되는 응용 프로그램을 손쉽게 빌드 및 배포할 수 있게 해 주는 IDE 도구를 활용해 보십시오(11페이지/인쇄 페이지 기준). 목차소개 네이티브 코드의 향상된 보안 관리되는 코드의 향상된 보안 기타 향상된 보안 결론 소개개발자는 안전한 응용 프로그램을 빌드하길 원하면서도 응용 프로그램의 보안을 학습하는 데는 충분한 시간을 할애하려 하지 않는 경우가 대부분입니다..

카테고리 없음 2011.10.05

C++의 함수 오버로딩!!

함수 오버로딩 이란 -> 함수의 이름이 같고 매개변수의 타입이 다르고 개수가 다르며 마지막으로 리턴 타입이 같아야 된다. 말로 하면 무슨말인지 모를수 있다 예제를 들어보겠다. int add() int add(char) int add(char,char) 이경우는 함수 오버로딩이 된다. int add(char) char add(int) 이경우는 함수 오버로딩이 되지 않는다 그 이유는 리턴 타입이 다르기 때문이다. -------------------------------------------------------------------------------------------- 디폴트 매개 변수 디폴트 매개 변수란? -> 함수의 매개변수를 C++에서는 인자값이 없을 경우에는 자신이 원하는 값으로 설정할수 있는..

메모리 접근 및 캐스팅 문제 !!!

#include double d = 3.14; struct test { int a; double *d; }x={100,&d}; struct test*func(void) { return &x; } void my_test(char a, ...) { printf("%f\n",**(double**)((unsigned char*)&a+4)); printf("%f\n",*(*(struct test**)((unsigned char*)&a+8))->d); printf("%f\n", *((*((struct test* (**) (void))(&a+12)))()->d)) ; } void main(void) { my_test('A',&d,&x,func); } 함수가 호출 되고 매개변수들은 지역변수 임으로 스택에 차곡차곡 채워..

1. ADC 와 잡음 제거 필터 및 재구적 평균 필터 !!!

1. AVR 의 ADC 란 ?? -> 아날 로그 신호를 디지털 화 시키는 것이다!! ADC 레지스터 설정에서 ADMUX 의 REFS0 의 설정에 따라 데이터가 우측 정렬 , 좌측 정렬로 값이 들어간다!!!. 우측 정렬 같은경우 $05 ADC9 ADC8 $04 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0 좌측 정렬 같은경우 $05 ADC9 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 $04 ADC1 ADC0 이런식으로 데이터 가 쌓이게 되는데!!!! 여기서 집고 넘어가야 할것은 !!! 메모리 주소이다 !!! ADC 각각의 레지스터 에 들어가는데 메모리 주소 번지를 보아라 ADCL가 먼저 들어오고 ADCH 가 나중에 들어오는것을 알수있다!!! 그럼 사용자는 ADC..