C/C++
Yannick_Tong
Yannick, wait you.
展开
-
stdint--ISO C99: 7.18 Integer typesC语言扩展类型
stdint--C语言扩展类型格式化输出:unit64_t %llu unit32_t %uunit16_t %huunit8_t %hhu获取类型头文件(ISO C99: 7.18 Integer types )如下:/* Copyright (C) 1997-2014 Free Software Foundation, I原创 2016-05-16 16:49:00 · 603 阅读 · 0 评论 -
C语言位运算符:与、或、异或、取反、左移和右移
位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。C语言提供的位运算符列表:& 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0| 按位或 两个相应的二进制位中只要有一个为1,该位的结果值为1^ 按位异或 若参原创 2016-09-06 16:54:28 · 16360 阅读 · 0 评论 -
初识ASN.1
ASN.1:ASN.1抽象语法标记(Abstract Syntax Notation One) ASN.1是一种 ISO/ITU-T 标准,描述了一种对数据进行表示、编码、传输和解码的数据格式。它提供了一整套正规的格式用于描述对象的结构,而不管语言上如何执行及这些数据的具体指代,也不用去管到底是什么样的应用程序。---百度百科asn1c: The ASN.1 compiler is a t原创 2016-08-24 12:57:38 · 1147 阅读 · 0 评论 -
libgps 函数使用
关于GPSD;GPSD是一个Linux下的一个守护进程,用以侦听来自GPS接收器的位置等信息,并将这些位置信息转换成一种简化的格式。GPSD支持二十多种不同GPS输出格式的GPS接收机,例如NMEA、Ashtech、AIVDM、iTalk Binary、Trimble TSIP、RTCM、uBlox UBX binary等。将收到的packet解析之后,可以通过D-BUS、共享内存和soc原创 2016-09-14 16:19:59 · 3045 阅读 · 1 评论 -
如何设置线程名
多线程的话,如果没有设置每个线程的名字,默认的是进程的名字。为每个线程设置名字,比较好管理和调试;prctl(PR_SET_NAME, "ThreadName1"); 需要包含以下头文件:#include原创 2016-09-13 16:39:22 · 2798 阅读 · 0 评论 -
Linux上查看进程中的的线程
问题: 我的程序在其内部创建并执行了多个线程,我怎样才能在该程序创建线程后监控其中单个线程?我想要看到带有它们名称的单个线程详细情况(如,CPU/内存使用率)。线程是现代操作系统上进行并行执行的一个流行的编程方面的抽象概念。当一个程序内有多个线程被叉分出用以执行多个流时,这些线程就会在它们之间共享特定的资源(如,内存地址空间、打开的文件),以使叉分开销最小化,并避免大量高成本的IPC(进程间通原创 2016-09-13 15:59:10 · 720 阅读 · 0 评论 -
如何删除文件内7天之前的数据?
如何删除文件内7天之前的数据? 首先, 我们需要在每一条信息之前记住一个时间撮, 这个时间撮有两个作用:#1. 用来记住这条信息的时间, #2. 用来做标记, 以后面好更新数据;首先我采用的是本地时间来作为该时间撮;data.timestamp = time((time_t*)NULL); time函数解释如下:NAME time原创 2016-05-31 14:18:55 · 951 阅读 · 0 评论 -
Gps如何根据两点(经纬度)计算直线距离
这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个圆圈就叫作“赤道”。在赤道的南北两边,画出许多和赤道平行的圆圈,就是“纬圈”;构成这些圆圈的线段,叫做纬线。我们把赤道定为纬度零度,向南向北各为90度,在赤道以南的叫南纬,在赤道以北的叫北纬。北极就是北纬90度,南极就是原创 2016-05-18 16:58:19 · 37990 阅读 · 3 评论 -
基于linux下获取时间函数的详解
asctime(将时间和日期以字符串格式表示)#include定义函数char * asctime(const struct tm * timeptr);函数说明asctime()将参数timeptr所指的tm结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回。此函数已经由时区转换成当地时间,字符串格式为:“Wed Jun 30 21:49:08 1转载 2016-05-30 15:45:12 · 334 阅读 · 0 评论 -
C语言如何删除文件中的指定行--更新txt等形式文件
基于我的上一篇文章, 链接如下:如何实现结构体和文件之间的转化 有时候我们需要删除文件的某一行,来更新文件,在这我个人扩展了一个函数,以删除指定条件的行。代码如下:static void UpdateHistoryFile(void){ FILE *fin,*fout; int counter = 1; STest test;原创 2016-05-17 17:00:10 · 10615 阅读 · 0 评论 -
Linux C下链队列的实现
由于工作需求, 需要开发一个C版本的队列, 经过一天的开发测试, 原始版本已完成;这也是我个人的第一篇博客, 希望将来能帮助更多后来开发者;废话不多说, 直接进入主题。队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队原创 2016-05-11 12:57:03 · 1117 阅读 · 0 评论 -
如何实现结构体和文件之间实现读写--fopen文件流读写(fscanf/fprintf)
如何实现结构体和文件之间实现读写--fopen文件流读写(fscanf/fprintf)目的:#1. 把结构体数据写入文件;#2. 把文件中数据到处到结构体;用到的函数:FILE *fopen(const char *path, const char *mode);int fscanf(FILE *stream, const char *format, ..原创 2016-05-16 13:25:26 · 5275 阅读 · 0 评论 -
file not recognized: File truncated编译错误总结
file not recognized: File truncated错误:这种错误一般是编译数据被截断或则编译过程中发生异常退出系统导致数据丢失;例如:sample.o: file not recognized: File truncatedcollect2: error: ld returned 1 exit statusmake[5]: *** [libsampl原创 2016-09-26 18:39:08 · 70682 阅读 · 3 评论