C++中常用特殊符号简介(: , :: ,) “::”类作用域操作符。“::”指明了成员函数所属的类。如:M::f(s)就表示f(s)是类M的成员函数。1.冒号(:)用法(1)表示机构内位域的定义(即该变量占几个bit空间)typedefstruct_XXX{unsigned char a:4;unsigned char c;} ; XXX(2)构造函数后面的冒号起分割作用,是类给成员变量赋值的方法,初始化列表,更适用于成员变量的常量const型。struct _XXX{_XXX() : y(0xc0) {}};(3) ..
Makefile知识记录 在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN...) 。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。一般我们可以使用“$(wildcard *.c)”来获取工作目录下的所...
linux读取整个文件 #include <stdio.h>#include <string.h>#include <unistd.h>#include <stdlib.h> FILE * pFile; long lSize; char * buffer; size_t result; /* 若要一个byte不漏地读入整个文件,只能采用二进制方式打开 */ pFile = fopen ("./test/dd.txt", .
Linux系统串口接收数据编程 linux串口接收数据,目前有三种方法:一:循环读取数据。二:通过软中断方式,使用信号signal机制读取串口,这里需要注意的是硬件中断是设备驱动层级的,而读写串口是用户级行为,只能通过信号机制模拟中断,信号机制的发生和处理其实于硬件中断无异。该方法问题。 异步通知的方式释放SIGIO信号实现应用层到内核的访问,现在发现当SIGIO信号释放时,应用程序的sleep会被中断。 SIGIO本来就是利用内核的软中断实现的,不想影响你的sleep,那么你就用多路复用IO的方式。
用openssh 登录开发板 源码及依赖库:编译openssl若需openssh支持Openssl,还需进行Openssl的安装,否则跳过本小节。解压并进入Openssl目录:tar -zxvf openssl-1.0.2p.tar.gzcd openssl-1.0.2p配置环境:export CC=arm-himix100-linux-gcc配置Openssl:./Configure \--prefix=/usr/local/openssl \--openssldir=/usr/lib/ss
TCP UDP SOECKET记录 char Buf[256] = {0}; int optval = 1,recv_len,i=0; struct sockaddr_in LocalSockAddr; int RemotServerFd = 0; int addr_len=0; struct sockaddr_in Remote_addr; Remote_addr.sin_family = AF_INET; Remote_addr.sin_addr.s_addr = inet_addr("192.168.66.84")..
linux线程间通信及同步机制总结 线程间的通信有两种情况:1、一个进程中的线程与另外一个进程中的线程通信,由于两个线程只能访问自己所属进程的地址空间和资源,故等同于进程间的通信。2、同一个进程中的两个线程进行通信。本文说的就是第二种情况。关于进程间通信(IPC)可以看我的另一篇博文http://blog.csdn.net/a987073381/article/details/52006729比起进程复杂的通信机制(管道、匿名管道、消息队列、信号量、共享内存、内存映射以及socket等),线程间通信要简单...
动态库制作和使用简介-转载 动态库制作和使用简介 在Linux中制作动态链接库只需要使用好GCC这两个编译选项即可搞定,下面小哥画了一张图简单的说明了下:过程简要说明: 其实链接库的生成过程也可以先分别生成位置无关的目标文件.o文件,然后再创建生成最终的.so动态链接文件。不过gcc可以直接使用这两个编译选项一次性生成。2动态链接库制作过程01准备源文件 这里小哥还是使用昨天的两个module作为例子来讲解动态链接过程,这里就不板书了,可以到上一...
自己动手做一个USB摄像头--转载 手里有一块AT32的开发板和一个OV2640摄像头模块,因为做智能车模型需要一个摄像头,就想能不能废物利用一下,用这俩做一个即插即用的USB摄像头,能够直接用在树莓派的Linux系统上,而不需要在Linux上再另外开发摄像头驱动了。但真正做起来之后才发现,淘宝上几十块一个的摄像头开发起来竟然这么麻烦,涉及到了很多东西,完完全全是一个大坑,断断续续做了两个来月才总算实现了。期间一度想直接下单一个,又清晰又稳定,但想想还是不甘心,谁让当初就这么下手了呢。。o(╥﹏╥)o在本文中,我将从下面四个.
君正T31 ACC解码 faad2是AAC音频解码的lib,支持MPEG2和MPEG4格式的audio解码。代码下载网址:https://www.linuxfromscratch.org/blfs/view/svn/multimedia/faad2.html。解压:tar xvzf faad2-2_10_0.tar.gzcd faad2-2_10_0/./configure --host=mips-linux-gnu CC=mips-linux-uclibc-gnu-gcc --enable-shared --pre.
BIN文件和HEX文件差异 Hex文件和Bin文件是什么Hex文件是以ASCII文本形式保存编译后的二进制文件信息。Hex文件使用ASCII文本的形式保存Bin文件的内容和Bin文件的一些配置信息。Hex文件可以由下载器(比如jlink)烧写到MCU的ROM中。Bin文件是MCU固件烧写的最终形式,也就是说MCU的ROM中烧写的内容完全就是Bin文件的内容。Hex文件和Bin文件的关系Hex文件可以说是MCU固件的中间形式,由下载器的软件根据Hex文件生成Bin文件再烧写到MCU的ROM中。既然Bin文件是最终我们想要的,
linux nm 指令 查询 动态库libsdl.so 中有没有 ugw_dev_log_func 函数nm libsdl.so |grep ugw_dev_log_func如果有会输出:00040e44 T ugw_dev_log_func详细的用法可以参考linux中的nm命令简介 - _小百 - 博客园