[C/C++ 에러] C2375 : '~~': 재정의. 링크가 다릅니다. 오류
[C/C++ 에러] C2375 : '~~': 재정의. 링크가 다릅니다. 오류 C Standard를 기준으로 설명하였다. DLL을 컴파일 할때 소스코드가 길어지고 CPP파일이 많아지고 헤더파일이 많아지면 재정의 오류가 생길수 있다. 이상하게 헤더 중복 방직 매크로(#pragma once)를 달아놔도 컴파일을 할때 재정의 오류가 나는데 오류메시지는 보통 아래와 같다. ============================================================================================= c:\\program files (x86)\\microsoft sdks\\windows\\v7.0a\\include\\winsock2.h(1815): error C2375: 'l..
[C/C++] C2440 : double 에서 'double *' 으(로) 변환할 수 없습니다
[C/C++] C2440 : double 에서 'double *' 으(로) 변환할 수 없습니다 이번 시간은 C2440 캐스팅 에러에 대해 알아보고자 한다. 현상 - 필자의 소스코드를 간단하게 정리하면 아래와 같다. 위에 함수 사용을 선언하고 메인함수 이후 함수 값을 리턴하는 형태인데, 코드를 돌려보면 C2440 : double → double * 로 변환할 수 없다는 에러가 뜬다. #include #include #include #include double optmach(double, double double[]); // (1) void main() { double a = 1.0; double b = 2.0; double c[5]; c[0] = 0.0; c[1] = 0.1; c[2] = 0.2; c[3]..
[C/C++ 에러] Visual Studio의 0xC00000FD: Stack overflow 오류
[C/C++] Visual Studio의 0xC00000FD: Stack overflow 오류 비주얼 스튜디오의 기본 스택 크기는 1M이다. 스택 오버플로우 오류는 스택 크기가 1M를 벗어나서 생기는 오류이다. 이 문제를 해결하기 위해서는 Stack 공간이 아닌 Heap 공간에 동적 할당을 해주는 방법이 있으나 동적 할당이 어려울 경우, 스택 예약 크기를 늘려줌으로써 해결할 수 있다. 1. 프로젝트 속성을 클릭! 2. 링커 → 시스템 → 스택 예약 크기 만약 10M로 바꿔주기를 원한다면 1024*1024*1=1MB 이므로 1024*1024*10=10485760 을 입력하면 된다.