fz 发布于 02月25, 2018

C与C++中函数的互相调用

考虑两种情况:一是在C++中调用C的函数,二是在C中调用C++的函数。 首先要确定一个问题,在这里我们的C文件使用gcc编译,CPP文件使用g++编译。假设如果我们都采用g++编译的话,这意味着所有函数调用格式都是CPP的,也就不存在C和CPP的区别了。 对于这种调用问题,我们知道一般是使用extern关键字来解决,下面就来讲解它的具体用法。首先要说明一下是,extern关键字是用来声明而不是定义...

阅读全文 »

fz 发布于 01月10, 2018

extern char *s与extern char s[]的区别

首先,C在语言中,指针和数组是完全不同的两个东西。我们先把这两个概念的固有想法完全抛弃。考虑C中是不能将数组作为参数传递的,因此当我们使用到数组名,编译器会自动转化成数组中首元素的地址进行传递,也就是arr这个名字等价于&arr[0]。不过,数组名这个东西比较特殊,它也是可以取地址的。我们可以这样理解:数组名是“数组”这种变量的变量名,当直接用这个变量名的时候,我们拿到的是它的首地址,当对...

阅读全文 »

fz 发布于 11月30, 2017

使用vbs自动连接VPN

现有需求:保持VPN一直在线,当VPN断开连接的时候能够自动连接,以及开机自动连接。 为了方便起见,我们采用vbs进行代码编写。 我们首先在系统中添加好VPN,然后编辑如下代码,命名为DialVpnAutomatically.vbs。将其加入任务计划,在系统开机时、登录前运行,即可使得VPN保持连接。 Set ws = CreateObject("Wscript.Shell") do while...

阅读全文 »

fz 发布于 11月30, 2017

删除7-zip的右键菜单

装了7zip之后,如果想把右键菜单中的7zip的条目删了怎么办? 很容易想到去7zip的设置里找到相关内容就可以了。 寻找后发现,取消勾选工具-选项-7Zip-添加7-Zip到右键菜单即可。 但是我无法应用,提示“拒绝访问”,怎么办呢? 我发现,是没有权限导致的问题。因为我的电脑开启了UAC,所以如果一个程序可以同时以管理员权限和非管理员权限运行的话,默认是不会跳出提示使用管理员权限的对话框的。也...

阅读全文 »

fz 发布于 11月24, 2017

解决Win10“服务主机: 本地服务(无网络)”与“服务主机: Internet连接共享(ICS)”导致CPU占用率过高的问题

不知怎么了CPU占用率变高了,看任务管理器发现是“服务主机: 本地服务(无网络)”与“服务主机: Internet连接共享(ICS)”占用了将近30%的CPU。 PART 1 查了半天也没查出个所以然,最后在知乎找到了答案,在这个回答的评论里,解决方案是:把C:\Windows\SoftwareDistribution\Download这个目录清空,然后重启就好了。原因是Windows Upda...

阅读全文 »

fz 发布于 11月08, 2017

使用Nginx转发我的两个https博客

由于最近服务器被墙,至今未恢复,换IP太贵了,无奈之下,只能搞一台新的服务器做Nginx转发,实现之后效果还行。不过还是有点麻烦的,因为两个博客都是https的,而且证书是分开的,因此需要把两套证书文件都拷过来才行,不然没法正常https。 首先,sudo apt-get install nginx,之后在/etc/nginx/conf.d/新建配置文件并编辑,加入如下内容: server { ...

阅读全文 »

fz 发布于 11月08, 2017

在VS 2017中配置OpenCV

对于Windows平台,我们可以直接下载预编译好的OpenCV,省得花费几个小时去编译它了。 首先在OpenCV官网下载,对于Windows,我们要下载Win pack,具体来说,我下载了3.3.1版本的opencv-3.3.1-vc14.exe。下载之后是个7zip自解压exe,假设我们解压到了VS工程文件的上一层的opencv目录下(相对于sln文件是上一层,但相对于vcxproj是上上层),...

阅读全文 »

fz 发布于 11月08, 2017

Windows系统开无线热点

本博客好久没更新了,前来更新一下。 Windows系统自带开无线热点的方法,写这篇文章是为了给自己备查。 执行netsh wlan set hostednetwork mode=allow ssid=名称 key=密码会虚拟出一个网卡。 例如netsh wlan set hostednetwork mode=allow ssid=FZDESKTOP key=fzfzfzfz。 运行命令之后,网络和...

阅读全文 »

fz 发布于 09月07, 2017

Matlab读取grib文件

首先下载read_grib。 执行mex -setup查看是否有C编译器。 使用如下代码即可读取grib的文件结构,接着读取数据即可。 mex BDS_unpack_mex5.c grib_struct=read_grib('global_soiltype.1x1.grb','invent') ...

阅读全文 »