- 博客(4)
- 资源 (1)
- 收藏
- 关注
原创 extern "C"使用总结
在C++源代码中,我们经常会看到下面的代码:#ifdef _cplusplusextern “C” {#endif/* ….. */#ifdef _cplusplus#endif那么它的作用是什么呢,其实extern "C"是C中的一种声明,它是告诉编译器将这部分代码按照C语言的形式进行编译和链接,我们都知道,C和C编译器对函数和变量的处理是完全不同的,因此
2017-11-26 13:33:09 314
转载 C\C++语言指针的强大用法之数组当作指针使用
在消息交互的结构体种,可能存在某些字段长度不固定,这时候我们很容易想到指针类型去实现这种功能,但是指针的增加玩玩会导致我们需要增加其内存的申请和释放,而且在我们调用memcpy进行拷贝的时候只能进行浅拷贝(至于深拷贝和浅拷贝的概念大家不知道的网上查下就明白了),这会带来很多的不便。实际过程中,我们可以使用数组代替指针的用法去避免这些不便,下面通过具体的例子来说明这个问题:假如我们有两个
2017-11-18 18:33:24 1201
转载 C\C++语言指针的强大用法之减少内存申请次数
在我们编写程序时,可定会遇到下面比较复杂的结构体,结构体里面存在指针类型的结构,指针类型的结构又存在指针数据,这时候我们分配内存的时候自然而然会想到分配多次,同时还要释放多次,这样不但比较繁琐,而且效率也比较低。下面我们举例复杂结构体定义:假设我们要定义一个Container类型的指针,并且含有一个Shape,此Shape有五个Point传统我们的内存分配方式:
2017-11-18 17:10:08 353
转载 C语言实现try catch处理
我们都知道,在Java、C#等高级程序语言中,都自带有异常处理机制,其基本结构如下:try{程序语句;}catch(Exception ex){异常处理;}这样做不但可以防止程序异常终止,而且在出现错误时可以及时作一些释放资源处理,对程序能继续健壮的运行下去尤其重要。但是C语言中没有这样异常处理机制,我们可以通过宏定义去实现类似这样的操作,这时候就使用到C语言强大而
2017-11-18 13:09:00 31486
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人