Mac app을 작성하려고하는데, 경우에 따라 오류 코드가 반환됩니다. 이것은 Intel 번들입니다. (이것은 Carbon C++ 프로젝트입니다. 그러나 이것은 아마도 부적절한 것입니다.)Mac app에서 리턴 코드
C++에서 수행하는 표준 방법은 값을 반환하는 main 함수를 사용하는 것입니다. 그래서 그 부분이 올바른 것이라고 생각합니다. . (나는 또한 명시 적으로 exit(42)
라고 부름을 시도했다)
질문 : 나는이 값을 어떻게 얻습니까?
터미널에서 open myapp
으로 앱을 시작하면 항상 다른 숫자를 반환하더라도 반환 값은 항상 0
입니다. (echo $?
을 사용하여 체크)
오픈 명령의 반환 값입니까? 내 앱의 반환 값이 어딘가에서 삼켜지고 있습니까?
execve
(앱 사용 방법)을 사용하는 다른 프로그램에서 실행하면 항상 0
리턴 코드가 표시됩니다.
앱에서 반환 코드를 검색 할 수 있습니까?
사이드 노트 : 프로그램이 번들로 있어야합니다.
나는 그것을하고있다. 도움이되지 않습니다. – darklon
'your.app'을 열고'your.app/Contents/MacOS/yourApp'를 실행하는 것과는 다른 점이 있습니다. 전자는 앱의 반환 코드를 제공하지 않지만 후자는 반환 코드를 제공합니다. 그것이 바로 바울이 쓴 것입니다. – Yuji
나는 그것을 이해하고 좋은 생각이었다. 실제로 execve() 만 execve()에서 작동하는 것으로 보이지만 반환 코드가 도착하지 않는 것 같습니다. exit()를 사용하여 프로세스를 기다릴 때 0이 반환되고 exit()로 반환되지 않습니다. 나는 또한 터미널과 함께 그것을 시험해 보았다. 그리고 나는 0도 거기에서 얻는다. – darklon