halfadder.c

来自「基于ANdroid平台的高欢堂书籍的对应源代码 非常有用」· C语言 代码 · 共 23 行

C
23
字号
/*    HalfAdder.c    */
#include "HalfAdder.h"
static void set_ab(void *t, int a, int b) {
    HalfAdder* cthis = (HalfAdder*)t;
    cthis-> a = a;    cthis-> b = b;
}
static void calc(void* t) {
    HalfAdder* cthis = (HalfAdder*)t;
    cthis->carry = cthis->a & cthis->b;    
    cthis->sum = cthis->a ^ cthis->b;  }
static int get_carry(void* t)
     {  HalfAdder* cthis = (HalfAdder*)t;
        return cthis->carry; }
static int get_sum(void* t)
     {  HalfAdder* cthis = (HalfAdder*)t; 
        return cthis->sum; }
CTOR(HalfAdder)
    FUNCTION_SETTING(set_digits, set_ab)
    FUNCTION_SETTING(run, calc)
    FUNCTION_SETTING(get_carry, get_carry)
    FUNCTION_SETTING(get_sum, get_sum)
END_CTOR

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?