自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (1)
  • 收藏
  • 关注

原创 jni中对数据成员byte数组和c语言互相转换

jni中对数据成员byte数组和c语言互相转换java数据结构public class Str { byte[] M = new byte[100];}c++语言数据结构struct Str{ unsigned char M[100];};Java数据结构转c++语言数据结构JNIEXPORT jint JNICALL Java_com_Conv(JNIEnv *env, jobject o, jobject obj/*结构类型*/){ Str str; jclass c

2020-11-17 16:52:47 547

原创 linux tail 命令的简单实现

/************************************************************** > File Name: tail.c > Author: 逮枫灵 > mail: [email protected] > Created Time: 2020年06月13日 星期六 20时55分43秒 *****************************************************

2020-07-05 16:02:24 1337 1

原创 在struct dirent中,为什么d_name[]的长度在有的系统上是1在有的系统上是255,为什么不定义为char *

在d_name的长度为1中可以动态的分配空间,使d_name不局限于固定的大小。长度为255的情况应该目前内存资源没有那么紧张了,不在意浪费那么点空间,并且使用方便。而为什么不适用char *,是因为malloc分配的是连续的存储空间,char *在malloc分配空间后还是必须指向其他地方的地址。并不是说char *指向的地址为它在结构中的偏移位置...

2020-06-29 13:12:52 370

原创 重要东西一定要记得备份!!!

坑爹啊,不小心把vim目录给删了,不知道怎么恢复,网上找了教程,结果把我家目录的文件全覆盖了。所有配置全没了。,以后一定要记得备份啊啊啊啊啊啊

2020-06-09 10:36:05 202 1

原创 who命令的简单实现

#include <stdio.h>#include <unistd.h>#include <fcntl.h>#include <utmp.h>#include <string.h>#include <time.h>void show_info(const struct utmp *info);int main(int argc, char *argv[]){ if(argc != 1 && arg

2020-05-24 16:03:39 191

原创 二叉树的后序非递归遍历

二叉树的前序和中序非递归遍历应该比较简单,我没多久就写出来了,但是后序遍历卡了我两个多小时!!!记录一下有问题欢迎指出哦~~~template <typename Ty_>void BinaryTree<Ty_>::DoPostorderTraversal(){ using std::stack; stack<Node<Ty_> *> st; Node<Ty_> *rt = root_; //最后一次访问的节点 Node<T

2020-05-23 20:07:38 174

原创 c++声明和定义的含义

c++声明和定义的含义对象的声明:在域中表明对象的名字和类型,并不分配实际空间,也不需知道具体的细节对象的定义:创建一个具体的对象,需要知道类型的细节,如class的定义,会分配实际的空间...

2020-05-07 18:02:34 169

原创 linux安装YouCompleteMe(很详细)

linux安装YouCompleteMe插件检查vim版本查看是否支持python下载插件管理器Vundle安装YouCompleteMe前的准备工作从github上clone YouCompleteMe编译YCM配置文件YouCompleteMe是个功能强大的代码补全插件,但是安装过程非常困难,这里带不太熟悉的朋友进行安装(非常详细)当遇到没有权限是使用sudo执行目前博主使用的linux发...

2019-08-24 11:40:10 3911 2

转载 编写守护进程需要遵循的基本规则

一、首先要调用umask将文件模式创建屏蔽字设置为一个已知值(通常是0)。由继承的来的文件模式创建屏蔽字可能会被设置为拒绝某些权限。如果守护进程要创建文件,那么它可能要设置的特定的权限二、调用fork,然后使父进程exit。这样做实现了下面几点了第一,如果该守护进程是作为一条简单的shell命令启动的,那么父进程终止会让shell认为这条命令已经执行完毕。第二,锐然子进程继承了父进程的进程组ID...

2019-05-08 14:56:53 174

原创 unix环境高级编程11.5课后答案

该实现不可重用int pthread_barrier_wait(pthread_barrier_t *barrier){ pthread_mutex_lock(&barrier->lock); barrier->count++; while(barrier->count < barrier->total) pthread_cond_wait(&a...

2019-05-01 18:12:39 167

原创 archlinux安装acct

在arch上试了下accton好像没有这个命令,所以以下为安装acct的包https://download.csdn.net/download/qq_40162781/11090958本来想免费的,但是不能设置积分解压缩后第一步:cd到压缩后的目录,执行./configure第二步:make第三步:进入root 输入“make install”安装程序。之后就可以进行进程会计处理了!...

2019-04-07 16:57:19 221

转载 _Noreturn函数(C11)

C99新增inline关键字时,它时唯一的函数说明符(关键字extern和static时存储类别说明符,可应用于数据对象和函数)。C11新增了第二个函数说明符_Noreturn,表明调用完成后函数不返回主调函数。exit()函数时_Noreturn函数的一个示例,一旦调用exit()它不会再返回主调函数。注意,这与void返回类型不同。void类型的函数再执行完毕后返回主调函数,只是它不提供返回值...

2019-03-28 18:46:31 6404

转载 #undef指令

#undef指令用于“取消”已定义的#deinfe指令。#define LIMIT 23#undef LIMIT即使原来没有定义LIMIT,也可以使用#undef。如果想使用一个名称,又不确定之前是否已经用过。为安全起见,可以用#undef指令取消该名字的定义。...

2019-03-27 16:41:56 2173

转载 使用fork创建一个新进程

以下内容摘自unix环境高级编程

2019-03-26 16:23:32 807

acct进程会计

好像pacman没有这个包,放这里供大家下载

2019-04-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除