C++
白菜_菜白
这个作者很懒,什么都没留下…
展开
-
关于形如--error LNK2005: xxx 已经在 msvcrtd.lib ( MSVCR90D.dll ) 中定义--的问题分析解决
转自:http://hi.baidu.com/qinfengxiaoyue/item/ff262ccfb53b4c2ba0b50a89引自:http://blog.csdn.net/sptoor/archive/2011/02/23/6203376.aspx对全文有改动。提示:阅读前需要对静态库(.lib)、动态库(.dll)、导入库(这个还是.lib)之间的区别联系有了解转载 2016-04-29 22:56:52 · 569 阅读 · 0 评论 -
Levmar 配置
Levmar配置 原文有些错误,在我的博客里已经改好了:http://blog.sina.com.cn/s/blog_45b747f70101he1t.html如果6或者7自由度机器人的运动学逆解无法找到解析解,我们就要用数值解法来处理。这属于非线性超越方程的数值解法问题。LM算法,也成为阻尼最小二乘法。本人编程能力太弱,只好借助于库函数。看到网上教程有用Levmar(FAQ)来做LM转载 2016-05-27 23:39:10 · 3019 阅读 · 1 评论 -
C 语言 register 关键字
register:这个关键字请求编译器尽可能的将变量存在CPU内部寄存器中,而不是通过内存寻址访问,以提高效率。注意是尽可能,不是绝对。你想想,一个CPU 的寄存器也就那么几个或几十个,你要是定义了很多很多register 变量,它累死也可能不能全部把这些变量放入寄存器吧,轮也可能轮不到你。一、皇帝身边的小太监----寄存器 不知道什么是寄存器?那见过太监没有?没有?其实我也没有。没转载 2016-05-27 23:52:19 · 294 阅读 · 0 评论 -
C语言中malloc函数返回值是否需要类型强制转换问题
1. 在C语言中, 如果调用的函数没有函数原型, 则其返回值将默认为 int 型.考虑调用malloc函数时忘记了 #include 的情况此时malloc函数返回值将为 int 而不是void * (这是C语言的规则, 所有没有函数原型的函数返回值都为int), 此时如果在程序中有如下语句[cpp]int *p = malloc(10); int *p原创 2016-05-28 11:46:24 · 3030 阅读 · 0 评论 -
用C++的 new 代替 C 的 malloc 进行内存分配
例子:(int*)malloc(100*sizeof(int)) 是先取得int类型的字节宽度,然后乘100计算后得到400,然后调用malloc,并将400传递给函数,分配400字节的内存空间,但是返回的是虚指针,即纯地址,该地址的类型是未知的,也即缺少数据宽度的信息。因此最后根据实际要求强制转换为int *。 new int[100]是分配可保存100个整数的内存空间,因为已给定数据类原创 2016-05-28 11:50:09 · 1247 阅读 · 0 评论 -
函数前加static与不加static的区别
1:加了static后表示该函数失去了全局可见性,只在该函数所在的文件作用域内可见2:当函数声明为static以后,编译器在该目标编译单元内只含有该函数的入口地址,没有函数名,其它编译单元便不能通过该函数名来调用该函数,这也是对1的解析与说明转载 2016-05-17 16:52:55 · 551 阅读 · 0 评论 -
<crtdbg.h> 的作用
1、在调试状态下让win程在输出窗口中显示调试信息,可以用_RPTn 宏n为显示参数比如_RPT0(_CRT_WARN,"text"); _RPT1(_CRT_WARN,"%d", iTest); _RPT2(_CRT_WARN,"%d,%f", iTest, fTest);....依次类推,详细见msdn 2、侦测内存泄露用_CrtSetDbgFlag函数原创 2016-05-30 19:50:02 · 634 阅读 · 0 评论