文章转载自:http://blog.csdn.net/zqiang_55/article/details/13506963
在2dx中用CCLog输出日志,但是在vs的控制台中由于信息很多,很难发现。可以用下面方法,会重新启动一个黑色的控制台来输出日志
修改main.c文件,如下:
- #include "main.h"
- #include "AppDelegate.h"
- #include "CCEGLView.h"
- #include "net/NetWork.h"
- #include "adapter/RouterAdapter.h"
-
- USING_NS_CC;
-
- #define USE_WIN32_CONSOLE
-
- int APIENTRY _tWinMain(HINSTANCE hInstance,
- HINSTANCE hPrevInstance,
- LPTSTR lpCmdLine,
- int nCmdShow)
- {
- UNREFERENCED_PARAMETER(hPrevInstance);
- UNREFERENCED_PARAMETER(lpCmdLine);
-
- #ifdef USE_WIN32_CONSOLE
- AllocConsole();
- freopen("CONIN$","r",stdin);
- freopen("CONOUT$","w",stdout);
- freopen("CONOUT$","w",stderr);
- #endif
-
-
- CCEGLView* eglView = CCEGLView::sharedOpenGLView();
- eglView->setViewName("MT");
-
-
- return CCApplication::sharedApplication()->run();
-
- #ifdef USE_WIN32_CONSOLE
- FreeConsole();
- #endif
-
- }
注意宏定义:
#define USE_WIN32_CONSOLE 要加上这一句,否则在编译android文件的时候会编译出错,要想在控制台上输出中文,要用printf函数,否则会使乱码。
同时要注意 命名空间的引用,否则printf函数不能使用