![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 74
Jacberg
感兴趣:C/C++,C#软件开发,数据库,MATLAB,算法等!
展开
-
.netcore在linux下使用P/invoke方式调用linux动态库
正常情况下,都是可以调用成功的如果出现调用失败的情况,可能是so文件缺少了一些依赖文件,可以通过ldd命令进行查看 1 ldd libzmq.so 如果有某些依赖文件找不到,会出现not found的字样,比如下面这种/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by */3rd-party/protobuf-2.4.1/src/.libs/libprot转载 2020-12-23 15:34:50 · 892 阅读 · 0 评论 -
C++回调C#
C++回调C#现在比较流行C#与C++融合:C#做GUI,开发效率高,C++做运算,运行效率高,二者兼得。但是C++与C#必然存在数据交互,C#与C++dll的数据交互从来都是一个让人头疼的问题。从调用方式看也有两种情况:1、C#调用C++函数这种情况用的比较多,数据流向可以是C#流向C++,通过参数将数据传递给C++(如:SetData(double[] data));也可以是C++流向C#(如:GetData(double[] data))。2、C++ Callback..转载 2020-08-06 20:36:03 · 2061 阅读 · 1 评论 -
Qt属性系统(Qt Property System)
Qt属性系统(Qt Property System)Qt提供了巧妙的属性系统,它与某些编译器支持的属性系统相似。然而,作为平台和编译器无关的库,Qt不能够依赖于那些非标准的编译器特性,比如__property 或者 [property]。Qt的解决方案能够被任何Qt支持的平台下的标准C++编译器支持。它依赖于元对象系统(Meta_Object Sytstem),元对象系统通过信号和槽提供了对象...转载 2020-04-25 22:22:40 · 1300 阅读 · 0 评论 -
统计最长有效括号个数
很久没写博客了,针对之前笔试做的题目,分享一个我的思路,可能在算法空间上不是最佳,希望多家多多指点; 这里考虑使用vector来实现匹配括号统计,并将成对括号存到vector中,使用栈可以实现同样的效果,这里使用vector在扩容上有一定性能损失; 该算法中将第一个括号字符均存入,在最后统计的时候根据最后一个字符来判断,判决最大括号数目是max还是max-1; 题目主要要求为: 给定一...原创 2020-04-22 23:09:20 · 988 阅读 · 0 评论 -
详解C/C++使用MATLAB设计的滤波器系数
应原先转载的一篇文章有好多朋友看的不是很明白,主要原因在于数字信号处理专业功底稍有欠缺,对于滤波器各种结构模型不是太清楚,导致对转载的文章有些异议,这里我重新根据我自己的应用场景,重新编辑一份关于MATLAB中涉及滤波器,生成C语言风格头文件,并在C语言中对信号进行滤波的描述。1、 首先在MATLAB workspace控制台输入fdatool或者sptool中都有滤波器设计版块,如图1、图2...原创 2019-07-31 16:12:43 · 4849 阅读 · 0 评论 -
java Windows平台 调用c++
java Windows平台 调用c++在Windows平台使用dll文件,在Vs编译dll时遇到找不到相应头文件: #include "jni.h",#include "jni_md.h"这两个头文件可以再java jdk安装目录下面的include目录下面找到,其中#include "jni_md.h"文件在include\win32下面,将这两个头文件拷贝到编译dll的cpp项目下面,重转载 2015-11-14 17:58:30 · 589 阅读 · 0 评论 -
JAVA基础之理解JNI原理
JNI是JAVA标准平台中的一个重要功能,它弥补了JAVA的与平台无关这一重大优点的不足,在JAVA实现跨平台的同时,也能与其它语言(如C、C++)的动态库进行交互,给其它语言发挥优势的机会。有了JAVA标准平台的支持,使JNI模式更加易于实现和使用。在此总结了下面这个知识图:实例:环境说明:ubuntu 10.4.2 LTS系统程序清单1:src/com/magc/jni/H转载 2015-11-13 23:11:08 · 352 阅读 · 0 评论 -
MAC地址全球唯一为什么还可以修改
首先我们要声明的是我们认识的“MAC地址的更改”不是更改网卡中的MAC,而是更改ARP缓存表中的MAC地址。 上面我们看到arp -s 10.10.0.8 00-00-00-00-00-00 把本机MAC地址更改为00-00-00-00-00-00 ARP缓存表中的MAC地址是这个,但是ipconfig /all中的physical address物理地址还是原来的转载 2015-04-13 21:18:04 · 12441 阅读 · 1 评论 -
mcc函数实现matlab的m文件转化为c,c++文件。
mcc函数实现matlab的m文件转化为c,c++文件。命令的格式为:mcc[-option]fun[fun2...][mexfile1...][mlifile...]此函数的作用是将matlab程序fun.m转化为c程序fun.c或者c++程序fun.cpp转化后的文件默认在当前目录中。若M文件多于一个,那么每个文件对应转化相应的c和c++文件若源文件包含c文件,转载 2015-04-11 16:16:50 · 4887 阅读 · 1 评论 -
关于typedef的用法总结
不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中。typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错,由于总结的很好,我就不加修改的引用过来了,以下是引用的内容(红色部分是我自己写的内容)。用途一:定义一种类型的别名,而不转载 2015-04-11 14:12:43 · 390 阅读 · 0 评论 -
常用的七大排序算法
1:冒泡排序:[cpp] view plaincopyprint?// BubbleSort.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include using namespace std; /* 冒泡排序是稳定排序 时间复杂度是 O(n^2) */ void Swap(int& a, in转载 2015-01-16 20:20:28 · 457 阅读 · 0 评论 -
栈Stack的一些基本操作
#include#include//内存分配#include#include//该头文件中包含大小写转换函数toupper(),tolower();#define size 10typedef struct { int element[size]; int top;}seqStack;//initial seqStackvoid in原创 2015-01-14 20:59:18 · 1737 阅读 · 0 评论 -
vision里面pt与字号大小对应关系
八号=5磅(5pt) ==(5/72)*96=6.67 =6px 七号=5.5磅 ==(5.5/72)*96=7.3 =7px 小六=6.5磅 ==(6.5/72)*96=8.67 =8px 六号=7.5磅 ==(7.5/72)*96=10px 小五=9磅 ==(9/72)*96=12px 号=10.5磅 ==(10.5/72)*96=14px 小四转载 2014-12-25 15:29:16 · 5536 阅读 · 0 评论 -
死锁产生的原因及四个必要条件
死锁产生的原因及四个必要条件产生死锁的原因主要是:(1) 因为系统资源不足。(2) 进程运行推进的顺序不合适。(3) 资源分配不当等。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同,也可能产生死锁。产生死锁的四个必要条件:(1) 互斥条件:一个资源每次只能被一个进程使用转载 2014-11-18 23:01:57 · 451 阅读 · 0 评论