![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
虾米小小小
这个作者很懒,什么都没留下…
展开
-
八皇后的后宫战(我是观战打酱油的)
函数的递归调用真的是有点懵,没用到的时候怎么也想不到还可以这样拿来用,就这一个八皇后的例子就花了我俩小时时间去研究,刚开始还拿笔在纸上写写画画,浪费了不少时间结果还是没思路,最终看人家代码竟然也有很大部分看不懂,学过了二叉树,也写过背过,感觉有相同的地方,但是更相同的是我真的写出来......原创 2017-08-22 22:38:17 · 157 阅读 · 0 评论 -
关于scanf格式化输入函数的小问题
关于scanf格式化输入函数的小问题......原创 2017-08-28 23:43:55 · 445 阅读 · 0 评论 -
V4L2+Qt5实现摄像头视频采集以及参数控制
这一段时间在做摄像头控制方面的工作,需要在Linux下实现对摄像头名称和分辨率的获取,同时对亮度、对比度、曝光值等参数进行控制,同时还需要对获取的帧画面进行处理。目前除了图像处理方面,简单的使用V4l2获取设备属性并可以打开摄像头进行参数控制,以及将读取的原始YUYV2帧数据转换为RGB24格式显示在QLabel上都可以实现,今天先在这里做个总结。1.对于V4l2常用的结构体以及相关的命令符,...原创 2019-02-15 17:09:05 · 5140 阅读 · 18 评论 -
C语言error: multiple definition of `***'错误
今天在C与C++混合编程时遇见一个问题,我有一个二次封装的a.c和a.h文件,由于一些原因将该文件拷贝为b.c和b.h文件也放到项目中,编译时报error: multiple definition of `***'错误,问题我知道是出在a.c和b.c文件中函数名重复,而C语言中又不支持重载,编译报重定义很正常。但是使用static声明静态函数,又只能被本文件内部调用,不符合我的预期。最后解决方式是...原创 2019-02-28 17:19:04 · 3408 阅读 · 0 评论 -
Linux C之getopt_long()函数
该函数遇见位置:V4L2官网中的capture.c文件;1.函数作用:解析命令行参数,支持长选项,如--device=/dev/video0; Ubuntu16.04下getopt_long()函数原型:NAME getopt, getopt_long, getopt_long_only, optarg, optind, opterr, optopt - Parse...原创 2019-04-16 22:48:36 · 605 阅读 · 0 评论 -
V4L2在VIDIOC_DQBUF处阻塞解决方法
之前遇见在VIDIOC_DQBUF处阻塞问题时,只是简单的设置了一下分辨率解决了当前问题就没再继续处理了。今天再看官网的demo时,才发现有个select函数可以来监听ioctl超时问题:fd_set fds;struct timeval tv;int r;FD_ZERO (&fds);FD_SET (fd, &fds);/* Timeout. */tv.tv...原创 2019-05-20 17:23:50 · 7717 阅读 · 4 评论 -
C语言函数重名问题
最近当遇到一个奇怪的问题,程序编译运行不报错,但是执行结果却一直不是自己预期的结果,定位时发现问题出现在重名函数处,自定义的C接口与另一方提供的动态库中的一个接口名冲突了,导致程序在链接时一直找的是自己定义的接口,这块好改,改一下接口名即可;但是后来发现不管定义的接口是不是static或者接口参数并不一致,甚至没有任何其它文件引用该接口所在到的文件,仅仅放到项目中编译能通过,运行就有问题,执行...原创 2019-09-02 17:26:46 · 1762 阅读 · 0 评论 -
V4L2+Qt5实现摄像头视频采集以及参数控制(源码学习版)
之前一直想把关于Linux下使用V4L2做视频采集、Qt界面显示实时画面的源码整理一下发出来,不过太懒了我,同时那版bug太多不想花精力去修改了,今天不忙就赶紧整理一下把程序删删减减做一个学习版的demo出来。这个demo源码只是供大家学习一下V4L2,如何在Linux下简单的打开一个摄像头设备并且可以获取视频流中的图像帧并显示出来,不然光看V4L2的结构体以及它的example还是不够直观的。...原创 2019-09-27 10:47:49 · 3952 阅读 · 11 评论