易截截图软件、单文件、免安装、纯绿色、仅160KB

据说是美国最“怪”C程序大赛的获奖程序

int main()
{
printf(&unix["\021%six\012\0"], (unix)["have"] + "fun" - 0x60);
}
gcc -S编译成汇编代码如下:
        .file   "test.c"
        .section        .rodata
.LC0:
        .string "fun"
.LC1:
        .string "\021%six\n"
        .string ""
        .text
.globl main
        .type   main,@function
main:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $8, %esp
        andl    $-16, %esp
        movl    $0, %eax
        subl    %eax, %esp
        subl    $8, %esp
        movl    $.LC0, %eax
        subl    $96, %eax
        addl    $97, %eax
        pushl   %eax
        pushl   $.LC1+1
        call    printf
        addl    $16, %esp
        leave
        ret
.Lfe1:
        .size   main,.Lfe1-main
        .section        .note.GNU-stack,"",@progbits
  &n


相关文档:

C/C++中的函数参数传递机制(转载)

 一、 函数参数传递机制的基本理论   函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题。基本的参数传递机制有两种:值传递和引用传递。以下讨论称调用其他函数的函数为主调函数,被调用的函数为被调函数。  值传递(passl-by-value)过程中,被调函数的形式参 ......

function(p,a,c,k,e,d)的解密代码

网马加密中,目前有个function(p,a,c,k,e,d)的,非常讨厌,我也是深恶痛绝,记得我刚开始碰到它的时候,拼命地读函数,那个叫痛苦啊,磕磕绊绊地勉强搞了出来。今天,突然看见了function(p,a,c,k,e,d)的解密代码,高兴都来不及
<script>
a=62;
function encode() {
var code = document.getElementById('code' ......

一道C笔试题

Author: Scurffybear Date: 2009.09.08
最近在招新人,下面是一道C的面试题,面试的印度人中,没有一个人做对,我粗看了一下题,在没有看答案前,我自己也做错了,嗯,是的,没啥不好意思的,我觉得这个题目很容易使人产生误解,又或者择C有深厚功底的人能躲过这一个障眼法?
以下是题目,
main()
{
char * ......

《编程珠玑》问题的C实现——2:向量旋转

 #include <stdio.h>
#include <stdlib.h>
#define SIZE 17
void reverse(int start, int end);
int data[SIZE] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17};
int main(void)
{
int i = 5;
reverse(0, i - 1);
reverse(i, SIZE-1);
reverse(0, SIZE-1);
return ......

c链表的2种形式

c变成的对象大多是共享内存中申请,比较少用malloc直接来申请,所以链表设计一般是下面2中结构:
对象 --> 对象 --> 对象
对象 -->链表对象-->对象 -->链表对象
(1)对于第一种,链表直接关联到对象本身,所以如果一个对象在消亡时,没有及时清理掉链表关系,则会导致链表掉链。
(2)链表对象本身是一 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号