现在位置: 首页 > 编程语言 > 文章
2018年02月24日 编程语言 ⁄ 共 2336字 暂无评论
函数调用 前言   本来打算在写完 数组、结构体、指针 等之后再写函数调用的,因为函数调用会牵扯到这些东西,但是我觉得那样做的话总会露出点意犹未尽的马脚,所以还是先简单地分析一下函数调用吧,之后再不断的完善函数调用这个大家伙。 C源程序(double.c) #include <stdio.h> int Double(int b) { int c; c = b + b; ++b; // 会影响到 a 吗? return c; } int main() { int a = 1; ...
阅读全文
2018年02月24日 编程语言 ⁄ 共 2206字 暂无评论
函数帧   这标题一念出来我立刻想到了一个名人:白素贞……当然,此女与本文无关,下面进入正题: 其实程序运行就好比一帧一帧地放电影,每一帧是一次函数调用,电影放完了,我们就看到结局了。   我们用一个递归求解阶乘的程序来看看这个放映过程(fac.c): #include <stdio.h> int fac(int n) { if(n <= 1) return 1; return n * fac(n-1); } int main() { int n = 3; int ans = fac...
阅读全文
2018年02月24日 编程语言 ⁄ 共 1542字 暂无评论
变量名、函数名   C程序在执行的时候直接用内存地址去定位变量、函数,而不是根据名字去搜索,所以C程序执行的速度比脚本语言要快不少。   对于函数中的局部变量来说,编译为汇编的时候,名字就已经被彻彻底底地忘记了,因为局部变量在函数帧中,这一帧要占多少字节,各局部变量在帧中的相对位置,都在编译成汇编的时候就可以确定下来,生成目标文件、可执行文件的时候也不需要再更改。   而 全局变量、static变量、函...
阅读全文
2018年02月24日 编程语言 ⁄ 共 1568字 暂无评论
函数指针 一、函数指针的值   函数指针跟普通指针一样,存的也是一个内存地址,只是这个地址是一个函数的起始地址,下面这个程序打印出一个函数指针的值(func1.c): #include <stdio.h> typedef int (*Func)(int); int Double(int a) { return (a + a); } int main() { Func p = Double; printf("%p\n", p); return 0; }   编译、运行程序: [lqy@localhost notlong]$ gcc -O2 -o func1 func1...
阅读全文
2018年02月24日 编程语言 ⁄ 共 1626字 暂无评论
可变参数    C语言的可变参数的实现非常巧妙:大师只用了 3 个宏就解决了这个难题。 一、可变参数的应用   这里实现一个简单的可变参数函数 sum:它将个数不定的多个整型参数求和后返回,其第 1 个参数指明了要相加的数的个数(va.c): #include <stdio.h> #include <stdarg.h> // 要相加的整数的个数为 n int sum(int n, ...) { va_list ap; va_start(ap, n); int ans = 0; while(n--) ...
阅读全文
------- 源自梦想、永远是你IT事业的好友、只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点也都能说出了123来,但是这些孤立的点终究显得太零散了,因此,我想从今天开始,以最经典的手机安全卫士项目为例,自己锻炼一下,也是想和大家交流交流,希望大家都能给出见解,共同进步。 二、代码的组织结构 (代码格式(命名规则))如...
阅读全文
2018年02月23日 编程语言 ⁄ 共 12091字 评论关闭
package android.util;      import java.util.LinkedHashMap;   import java.util.Map;      /**   * A cache that holds strong references to a limited number of values. Each time   * a value is accessed, it is moved to the head of a queue. When a value is   * added to a full cache, the value at the end of that queue is evicted and may   * become eligible for garbage collection.   * Cach...
阅读全文
2018年02月23日 编程语言 ⁄ 共 26360字 评论关闭
官方文档: A Handler allows you to send and process Message and Runnable objects associated with a thread's MessageQueue. Each Handler instance is associated with a single thread and that thread's message queue. When you create a new Handler, it is bound to the thread / message queue of the thread that is creating it -- from that point on, it will deliver messages and runnables to that me...
阅读全文
2018年02月23日 编程语言 ⁄ 共 715字 评论关闭
    国际C语言混乱代码大赛(IOCCC)是一项年度竞赛,自1984年以来一直延续至今。它由Landon Curt和Larry Bassel在USENET上举办,冬天接收参赛作品,春天评判,夏天公布获胜者。      1988年的获胜者是cdecl程序的一个混乱版本,作者是Gopi Reddy。回想一下,非混乱的cdecl代码大概是150行,而混乱版本的代码只有12行。      下面就是混乱代码: #include<stdio.h>#include<ctype.h>#define w printf#define p whi...
阅读全文
2018年02月23日 编程语言 ⁄ 共 7617字 评论关闭
width 编辑器的宽度,可以设置px或%,比textarea输入框样式表宽度优先度高。 数据类型: String 默认值: textarea输入框的宽度 示例: K.create('#id', { width : '700px' }); height 编辑器的高度,只能设置px,比textarea输入框样式表高度优先度高。 数据类型: String 默认值: textarea输入框的高度 minWidth 指定编辑器最小宽度,单位为px。 数据类型: Int 默认值: 650 minHeight 指定编...
阅读全文