进程是操作系统虚拟出来的概念,用来组织计算机中的任务。它从诞生到随着CPU时间执行,直到最终消失。不过,进程的生命都得到了操作系统内核的关照。就好像疲于照顾几个孩子的母亲内核必须做出决定,如何在进程间分配有限的计算资源,最终让用户获得最佳的使用体验。内核中安排进程执行的模块称为调度器(scheduler)。这里将介绍调度器的工作方式。
一枚野生程序员~
结构体和指针是数据结构的根基,所以这篇博客这算是对结构体有一个重新的认识,主要内容包括:匿名结构体、结构体的自引用、结构体的不完整声明、结构体内存对齐、位段的使用、联合体的应用场景等等。
可以使用 file
命令,并添加 -i
或 --mime
参数来查看一个文件的字符编码,但是这种查看编码的方式并不是准确,比如我在CentOS7.3 测试的时候它把GBK编码的文件识别成了ISO8859-1,所以最好是自己明白文件的原始编码。
其中 servlet规范包括三个技术点:servlet listener filter
监听器就是监听某个对象的的状态变化的组件
监听器的相关概念:
事件源:被监听的对象 —– 三个域对象 request、session、servletContext
监听器:监听事件源对象 事件源对象的状态的变化都会触发监听器 —6+2
注册监听器:将监听器与事件源进行绑定
响应行为:监听器监听到事件源的状态变化时 所涉及的功能代码 —程序员编写代码
第一维度:按照被监听的对象划分:ServletRequest域 HttpSession域 ServletContext域
第二维度:监听的内容分:监听域对象的创建与销毁的 监听域对象的属性变化的
先上一段看来比较正常的代码:
1 | #include<stdio.h> |
由于我的环境是VisualStudio2013,所以上述程序可以完美执行,并且是编译0警告通过,但是在VisualStudio2008的环境下这样写是完全错误的,C89规定,在任何执行语句之前,在块的开头声明所有局部变量。但是在C99以及C++中则没有这个限制,即在首次使用之前,可在块的任何位置都可以声明变量。例如下面的写法对于C89标准才是正确的:
1 | #include<stdio.h> |
当然为了达到更好兼容性,建议都把局部变量写在代码块的开始位置!!
这是几个由二维数组构成的迷宫,简单的迷宫,多通路不带环的迷宫,多通路带环的迷宫!对于简单迷宫我们需要判断是否有出口!对于多通路不带环的迷宫我们需要确定出口并且判断最短路径,对于通路间带环的迷宫我们需要找出最短路径!
组件默认左对齐、顶部对齐
设置组件在指定组件的右边android:layout_toRightOf="@id/tv1"
设置在指定组件的下边android:layout_below="@id/tv1"
设置右对齐父元素android:layout_alignParentRight="true"
设置与指定组件右对齐android:layout_alignRight="@id/tv1"
指定各个节点的排列方向
设置右对齐android:layout_gravity="right"
当竖直布局时,只能左右对齐和水平居中,顶部底部对齐竖直居中无效
当水平布局时,只能顶部底部对齐和竖直居中
使用match_parent时注意不要把其他组件顶出去
线性布局非常重要的一个属性:权重android:layout_weight="1"
权重:按比例分配屏幕的剩余宽度或者高度
默认组件都是左对齐和顶部对齐,每个组件相当于一个div
可以设置上下左右对齐,水平竖直居中,设置方式与线性布局一样android:layout_gravity="bottom"
不能相对于其他组件布局
每个<TableRow/>
节点是一行,它的每个子节点是一列
表格布局中的节点可以不设置宽高,因为设置了也无效
<TableLayout/>
的子节点宽为匹配父元素,高为包裹内容<TableRow/>
节点的子节点宽为包裹内容,高为包裹内容根节点中可以设置以下属性,表示让第1列拉伸填满屏幕宽度的剩余空间android:stretchColumns="1"
android:layout_x="144dp"
android:layout_y="154dp"
注意:直接复制项目需要改动的地方:项目名字、应用包名、R文件重新导包
1970年,美国贝尔实验室的Ken Thompson将BCPL进行了修改,并为它起了一个有趣的名字“B语言”。意思是将BCPL语言煮干,提炼出它的精华。并且他用B语言写了第一个UNIX操作系统。 而在1973年,B语言也给人“煮”了一下,美国贝尔实验室的D.M.RITCHIE在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。 为了使UNIX操作系统推广,1977年Dennis M.Ritchie 发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》。即是著名的ANSI C。而C++就是以ANSI C为基础进行开发的,本文重在C的指令和C++的引用的区别。
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia-plus根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true