现在位置: 首页 > buttercup发表的所有文章
=== .c   === 预处理 -》.c (源文件) 编译 -》.s/asm (汇编程序) 汇编 -》.o/obj 目标程序(二进制文件) 链接 -》.exe可执行程序 (二进制文件) (1) 为什么要生成汇编,而不是直接从源文件编译成机器指令(二进制代码)? 首先,汇编语言作为机器指令的助记符,调试以及优化起来都会比较方便; 其次,汇编到机器指令的过程是由硬件完成的,是一个自动过程,让硬件来完成效率较高; 最后,如果要将源文件直接转换成机器指令,那么编译器编写者就必须要非常数量机器码,这是一个比较困难且低效的过程。 (2) 详细解释从源文件经过编译成为......
阅读全文
  • 10月
  • 13日
综合 ⁄ 共 1331字 评论关闭
转载请注明出处:jiq•钦's technical Blog 一、需求 我有一个显示所有可用服务的树,单击服务名称就可以展开节点,显示所有对应的IP地址。 我需要同时只能显示一个服务的IP地址列表,因为不想同时刷多个服务信息,所以需要保持单一展开路径。 此外当管理员在这个界面停留时,为了能够监控当前展开服务的地址变化,需要能够定时刷这个服务的IP地址列表。 备注:对于异步加载Ztree节点,可以参考这篇文章。 二、解决方案 保持单一展开路径很简单,声明一个全局变量记录最近一次展开的节点,然后实现ZTree的beforeExpand回调函数:......
阅读全文
  • 05月
  • 16日
综合 ⁄ 共 5775字 评论关闭
本文转自:点击打开链接    这个类比较适合纯代码开发项目,它的内部有两个公共属性,都是 UIView。一个作为自定义导航栏的superView,另作为除导航栏外的其他界面元素的superView。    它会自动监测当前设备是什么IOS版本,设备的屏幕尺寸是多少。因为用到了autolayout,所以自动适配屏幕旋转。 具体代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51......
阅读全文
  • 05月
  • 19日
综合 ⁄ 共 6165字 评论关闭
Allocation         在CACHE中发现一个位置,并把新的cache数据存到这个位置的过程。这个处理过程可能包括evicting(驱逐)cache中已存在的数据,从而为新的数据腾出空间。 Associativity         指每个Set(集)里包含的line frames(行帧)数。也就是cache的way(路)数。 Capacity miss容量失效          因为cache的容量限制,导致不能包括一个程序的整个working set(工作集),从而造成cache失效。这是三个cache失效原因(容量、强制、冲突)之一。 Clean干净          一个有效的cache行,它的内容没有被更高层内存或CPU......
阅读全文
  • 05月
  • 08日
综合 ⁄ 共 2724字 评论关闭
1, 大致框架 2, 几个主要流程 a) malloc & init(softmac) 内存分布 struct wiphy struct ieee80211_local Driver private class 结构体关系 初始化顺序 module_init,注册xxxx_driver_ops xxxx_probe,各种资源初始化。 ieee80211_alloc_hw,两个参数分别为mac80211_config_ops和private class的size wiphy_new分配整块内存,wiphy_new里面初始化cfg80211_registered_device的一些成员 初始化ieee80211_local各个成员,并将wiphy.priv指向ieee80211_local ieee80211_local偏移到末尾,......
阅读全文
  • 05月
  • 05日
综合 ⁄ 共 3698字 评论关闭
MessageFormat用法 博客分类:  java MessageFormatMessageFormat.format  MessageFormat用来格式化一个消息,通常是一个字符串,比如: String str = "I'm not a {0}, age is {1,number,short}", height is {2,number,#.#};   而MessageFormat可以格式化这样的消息,然后将格式化后的字符串插入到模式中的适当位置,比如: 将str中的{0}用"pig"替换,{1,number,short}用数字8替换,{2,number,#.#}用数字1.2替换。 那么最终用户得到的是一个格式化好的字符串"I'm not a pig, age is 8, height is 1.2"。   MessageFo......
阅读全文
  • 04月
  • 29日
综合 ⁄ 共 531字 评论关闭
直接套KMP模板 #include<stdio.h> #include<string.h> #include<iostream> using namespace std; int s[1000005],w[10005],next[10005]; int b,c; void show() { int i,j; i=0; next[0]=-1; j=-1; while(i<c) { if(j==-1||w[i]==w[j]) {i++; j++; next[i]=j; } else j=next[j]; } } int KMP() { int i,j; i=0; j=0; while(i<b&&j<c) { if(j==......
阅读全文
  • 04月
  • 24日
综合 ⁄ 共 2484字 评论关闭
题目描述 求(n^1+n^2+n^3+......+n^m)%p的值。 样例输入 2 2 5 样例输出 1 数据范围 n,p<=10^8,m<=10^17 题解 先说一下,这道题通法是矩阵乘法(话说……noip考这个?)。 linux机子上测的,只有快速幂30分。这里没打…… 50分的打法用到了分治算法,原式可化为(n^1+n^2+n^3+......+n^(m div 2))+n^(m div 2)*(n^1+n^2+n^3+......+n^(m div 2))(红色部分要根据m的奇偶性特判)对于n^k可以快速幂过。剩下两部分可以继续分治下去直到括号内只剩n^1。这样看似复杂度很低,但应为每次分治都需要走到底,所以只是一种比普通暴力优越一......
阅读全文
  • 04月
  • 22日
综合 ⁄ 共 4038字 评论关闭
前言 A*算法是常用的游戏算法之一,也是初学者比较难掌握的一个算法。 本文实现的是在Unity引擎中,以可视化的方式形象表现A*算法搜索的具体过程步骤, 包括地图的搜索路径产生过程、FGH的计算以及开启关闭列表的变化等。 博文首发地址:http://blog.csdn.net/duzixi 一、GUI可视化版本 以下脚本为GUI可视化版本,将其添加给新场景的主摄像机,运行即可。 /// <summary> /// A*算法 Unity GUI实现 /// Created by 杜子兮(duzixi.com) 2015.2.19 /// Edited by 马帅 2015.5.5 /// www.lanou3g.com All Rights Reserved ///......
阅读全文
  • 04月
  • 22日
综合 ⁄ 共 3484字 评论关闭
 package a.a;      import android.app.Activity;   import android.os.Bundle;   import android.view.View;   import android.widget.Button;   import android.widget.EditText;      public class AActivity extends Activity {       /** Called when the activity is first created. */          EditText Ev1;          @Override       public void onCreate(Bundle savedInstanceState) {           super.onCreate(savedInstanceState);           setContentView(R.layout.main);              Ev1 = (EditText)fin......
阅读全文
  • 03月
  • 30日
综合 ⁄ 共 520字 评论关闭
        这两天在学习Git的使用,在windows环境下,使用了Atlassian的软件Sourcetree来作为git客户端。SourceTree使用的终端是MINGW32,在MINGW32的默认设置中不能进行复制粘贴,下附解决方案。转自http://blog.chinaunix.net/uid-24709751-id-4032541.html          Right-click on the title bar of the command window and select 'Properties', then on the 'Options' tab tick the box for the 'QuickEdit mode', then click 'Ok' and select that the changes should apply to all windows using the same name.After that ......
阅读全文
  • 02月
  • 03日
综合 ⁄ 共 4630字 评论关闭
5: 文本编程首先需要创建一个插入符,创建插入符用CreateSolidCaret( int nWidth, int nHeight );参数分别是Caret(插入符)的宽度和高度,如果设置为0则会认为是系统窗口边界的高度与宽度。创建插入符需要在窗口创建完成之后创建,就需要在响应WM_CREATE消息的函数里去创建,响应WM_CREATE消息的函数是OnCreate;接下来就是在这个函数里用查到的创建插入符的函数CreateSolidCaret,在msdn下边解释Once created, the caret is initially hidden. To show the caret, the ShowCaret member function must be called.  (这个插入符一旦......
阅读全文