C++和C语言笔记

1、被extern "C"修饰的变量和函数是按照C语言方式编译和连接的;

要明白为何使用extern "C",还得从cpp中对函数的重载处理开始说起。在c++中,为了支持重载机制,在编译生成的汇编码中,要对函数的名字进行一些处理,加入比如函数的返回类型等等.而在C中,只是简单的函数名字而已,不会加入其他的信息.也就是说:C++C对产生的函数名字的处理是不一样的.

2、std::vector介绍http://www.cnblogs.com/yxnchinahlj/archive/2011/03/06/1972435.html

3、迭代器介绍http://www.360doc.com/content/12/1128/13/9290626_250737796.shtml

4、assert()

assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include

5、memset()

函数原型  void *memset(void *s, int ch, unsigned n); 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向S的指针。

6、memcpy()

原型:extern void *memcpy(void *dest, void *src, unsigned int count);

用法:#include

功能:由src所指内存区域复制count个字节到dest所指内存区域。

说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。

7、将变量声明为static const,是为了实际需要,为了设定一个在整个class范围内都不变的常量。

C语言相关:

1. C语言打印十六进制用%x

2.stdint.h定义了几种扩展的整数类型和宏,

3.gcc -o test spi_slv.c  如果带代码中有for循环,需要加上-std=c99

4.printf打印uint64_t的格式为%lx

5.调用子函数的输入没有初始化或者主函数没有return 0或者main()没有定义为int型,导致segmentation fault,目前具体原因尚未明确。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值