11 C 언어의 main() 함수는 int 값을 반환하는게 표준입니다. 보통 정상 종료시 0, 이외에의 경우 다른 숫자를 반환합니다. main() 함수가 void로 선언되어도 정상적으로 컴파일 되기는 합니다만 이건 표준이 아니에요. 컴파일러와 런타임 라이브러리가 적절히 0을 반환해 주고 있을 뿐...
1 굳이 JNI를 쓰지 않아도 자바에도 프로세스를 다루기 위한 라이브러리는 이미 갖추어져 있어요.
예를들면 3D로 화면에 그림을 그리기 위해서 OpenGL 라이브러리를 사용하는데 이 라이브러리는 C 함수들로 이루어져 있어요. (다른 언어로도 사용 가능하지만). 창을 하나 띄우거나 키보드 입력을 받거나 하려면 C로 윈도OS의 함수를 호출하는거구요. 윈도API도 C로 되어있거든요.
작성자님이 사용하고 계시는 거의 대부분의 프로그램의 C로 작성되었거나, C로 작성된 모듈을 사용하고 있거나, C로 작성된 실행기를 기반으로 작동하고 있어요. C언어 자체가 그러한 기능들을 가지고 있는게 아니고 C를 통해서 운영체제나 그래픽라이브러리를 사용하는거죠. 없는 로직은 직접 만들구요.
권한문제가 아니고 악성코드가 숨어있다고 하시는 분들.. 안드로이드 시스템에서 앱이 불필요한 동작을 하는지 확인하는 방법 중 하나가 어떤 권한을 요청하는지 보는겁니다. 플래시는 카메라 접근 권한만 있으면 되는데(광고는 인터넷 접속 권한도 추가) 다른 쓸데없는 권한을 요청하는건 문제죠. 근데 스토어의 대부분의 안드로이드 앱이 다 그래요.
근데 배열을 동적할당 하지 말고 stl에 있는 컨테이너 클래스를 쓰는게 백만배는 더 좋아보이네요. http://stackoverflow.com/questions/238008/relative-performance-of-stdvector-vs-stdlist-vs-stdslist