Cocos2d—X游戏开发之VS2010 控制台输出中文,模拟器中文乱码问题解决
首先,先解决第一个问题,我们使用VS2010开发的时候,调试的时候,中文打印出来都是乱码,这个问题很纠结。
如下图:
CCLOG("cclog: 测试使用标签的自动换行和个别字体大写");LOGNEWLINE;
输出结果如下图:
<dict>
cocos2d.x.version: 2.1rc0-x-2.1.4
cocos2d.x.compiled_with_profiler: false
cocos2d.x.compiled_with_gl_state_cache: true
gl.vendor: NVIDIA Corporation
gl.renderer: GeForce 310M/PCIe/SSE2
gl.version: 3.3.0
gl.max_texture_size: 8192
gl.max_texture_units: 96
gl.supports_PVRTC: false
gl.supports_NPOT: true
gl.supports_BGRA8888: false
gl.supports_discard_framebuffer: false
gl.supports_vertex_array_object: true
</dict>
cclog: ?????????????????к?????????д
这是很大的一个问题,是吗?英语不是很熟练的小伙伴们?
不得不说,VS2010这个开发工具没说的,真是开发者的杯具开始。尤其是对我使用MAC非常熟悉的人来说。
好的,废话不说,看下怎么使用控制台来调试我们的代码,能够正常输入中文。
这里需要配置main.c,通过它来调出控制台输出中文,但是有一点限制,就是必须使用cout 或者 printf ,而不能使用CCLog。
直接贴出代码:
#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 // create the application instance
CCEGLView* eglView = CCEGLView::sharedOpenGLView();
eglView->setViewName("MT");
//eglView->setFrameSize(480,320); return CCApplication::sharedApplication()->run(); #ifdef USE_WIN32_CONSOLE
FreeConsole();
#endif }
通过这个USE_WIN32_CONSOLE来实现我们的代码调试。测试代码如下
CCLOG("cclog: 测试使用标签的自动换行和个别字体大写");LOGNEWLINE;
printf("printf: 测试使用标签的自动换行和个别字体大写");LOGNEWLINE;
VS2010输出窗口如下:
<dict>
cocos2d.x.version: 2.1rc0-x-2.1.4
cocos2d.x.compiled_with_profiler: false
cocos2d.x.compiled_with_gl_state_cache: true
gl.vendor: NVIDIA Corporation
gl.renderer: GeForce 310M/PCIe/SSE2
gl.version: 3.3.0
gl.max_texture_size: 8192
gl.max_texture_units: 96
gl.supports_PVRTC: false
gl.supports_NPOT: true
gl.supports_BGRA8888: false
gl.supports_discard_framebuffer: false
gl.supports_vertex_array_object: true
</dict>
cclog: ?????????????????к?????????д
为什么只是输出CCLog,printf 呢?
看下控制台,如下:
然后是第二个问题,模拟器上竟然也是乱码!!!如果英语很好,在调试的时候,可以使用英文代替,但是到了开发的时候了,模拟器上中文竟然也是乱码??!
这是造的。
测试代码:
CCLabelTTF *testLabel = CCLabelTTF::create("测试使用标签的自动换行和个别字体大写,test","Zapfino",30);
testLabel->setPosition(ccp(visibleSize.width*0.5,visibleSize.height*0.2));
testLabel->setColor(ccc3(200,200,200));
this->addChild(testLabel,1);
模拟器运行如下图:
有了时间在写,很快。
Cocos2d—X游戏开发之VS2010 控制台输出中文,模拟器中文乱码问题解决的更多相关文章
- Cocos2d—X游戏开发之CCToggle(菜单标签切换)CCControlSwitch(开关切换)
Cocos2d—X游戏开发之CCToggle(菜单标签切换) 首先继承子CCMenu,是菜单标签中的一种.‘ class CC_DLL CCMenuItemToggle : public CCMenu ...
- Cocos2d—X游戏开发之CCScrollView(滑动视图)(十二)
CCScrollView在Cocos2d-X引擎中主要使用在图片尺寸远大于屏幕尺寸的时候使用. 总体来说,使用起来比较简单. 一个是CCScrollView控件本身,一个是CCScrollViewDe ...
- Cocos2d—X游戏开发之CCTableView详解(十一)
本来很早就想写关于CCTableView的文章,但是在基本功能实现之后呢,项目需求增加导致对这个控件的研究必须更加深入一点. 好的,现在开始介绍一下这个控件,在Cocos2d—X引擎中,这是一个仿制i ...
- Cocos2d-x 3.x游戏开发之旅
Cocos2d-x 3.x游戏开发之旅 钟迪龙 著 ISBN 978-7-121-24276-2 2014年10月出版 定价:79.00元 516页 16开 内容提要 <Cocos2d-x ...
- [整理]Unity3D游戏开发之Lua
原文1:[Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘(上) 各位朋友,大家好,我是秦元培,欢迎大家关注我的博客,我地博客地址是blog.csdn.net/qinyuanpei.如果 ...
- [Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘(下)
---------------------------------------------------------------------------------------------------- ...
- 【转载】浅谈游戏开发之2D手游工具
浅谈游戏开发之2D手游工具 来源:http://www.gameres.com/459713.html 游戏程序 平台类型: iOS Android 程序设计: 其它 编程语言: 引擎/SDK ...
- [Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘终结篇:UniLua热更新全然解读
---------------------------------------------------------------------------------------------------- ...
- iOS游戏开发之UIDynamic
iOS游戏开发之UIDynamic 简介 什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象 ...
随机推荐
- Excel几个常用操作
1.冻结第一行:视图->冻结窗格->冻结首行 2.第一行自动筛选:选择要设置的行,数据->筛选->自动筛选 3.在单元格中添加下拉菜单:(1)选中一列,数据->数据验证. ...
- 20141014C#面向对象抽象方法,抽象类,接口
里氏代换原则.可以用子类的对象替代父类的对象. 抽象依赖原则.依赖——形参,关联 一.抽象方法: 在一些父类中,某些行为不是非常明确,因此无法用代码来具体实现,但是类必须具备此方法,因此把这样的方法定 ...
- BZOJ 4311: 向量( 按时间分治 + 线段树 )
离线, 然后按时间分治, 每个向量都有出现时间[l, r], 直接插入时间线段树(一个向量只会影响O(logN)数量级的线段树节点). 在线段树每个节点弄出凸壳然后二分. 时间复杂度O(Nlog^2N ...
- fork进程函数总结
学习链接: http://blog.csdn.net/jason314/article/details/5640969 http://coolshell.cn/articles/7965.html 搜 ...
- Servlet基础知识(四)——Servlet过滤器Filter
一.什么是过滤器: 政府大楼的安检保安,它既能对进入政府大楼的人员进行检查,只允许检查符合要求的进入:同时他也负责对出大楼的人进行检查,看他带出的东西是否符合要求. 同样的,Servlet中的过滤器既 ...
- Hadoop基础概念介绍
基于YARN的配置信息, 参见: http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/ hadoop入门 - 基础概念 ...
- mysql查询结果写入文件
注:转自csdn zuyi532 方法1: shell> mysql -uroot -proot -h localhost xxx库 -e " select * from xxx表 l ...
- This 关键字和变量作用域
public class Number { int count; public void method01(){ // int count=3; count=3; // t ...
- SQL Server 镜像
sql server 2005镜像制作 以下是操作步骤:-- =========================================== -- 无论是主体服务器.镜像服务器, 还是见证服务 ...
- JAVA泛型接口
事例代码: package com.xt.thins_15_3; import java.util.Iterator; /** * 泛型接口 * * @author xue * * @param &l ...