콘서트 기술을 사용하여 IloCplex로 최적화 모델을 구축 중입니다. 내 루틴 내에서 교수가 몇 년 전에 저술 한 서브 루틴을 호출해야합니다. 이 서브 루틴은 "CPXopenCPLEX가 리턴 한 CPLEX 환경에 대한 포인터"라는 인수로 필요합니다. 문제는 콘서트 기술을 사용하여 그러한 포인터를 만드는 방법을 찾을 수 없다는 것입니다. "CPXopenCPLEX"는 호출 할 수있는 라이브러리에 속한 것으로 보입니다. 지금까지 내가 한 일은 내 모델에 IloEnv를 선언하는 것입니다.IloEnv를 CPXENVptr로 변환
IloEnv env;
다음 CPLEX 환경에 대한 포인터로 변환하려고합니다. CPXENVptr cpxenv; cpxenv = (CPXENVptr) & (env);
하지만 작동하지 않는 것 같습니다. 그것은 컴파일,하지만 난 메시지
"분할 오류 (코어 덤프)"나는 코드
을 실행할 때 나는 누군가가 나를 도울 수 있기를 바랍니다?
C에서 포인터를 캐스팅 할 때 컴파일러에서 하나의 데이터 구조를 마치 다른 것으로 취급하도록 알려주므로 변환이 수행되지 않습니다. 호출하는 "서브 루틴"은 CPXEnvptr과 같은 매개 변수를 처리합니다. 이것은 코어 덤프를 제공합니다. C는 그런 식으로 발을 쏠 수있게 해줍니다. –