C 基础知识

智码破浪使
• 阅读 1302

函数指针

typedef void (*Func)(int);
typedef Func (*Func2)(int i, int j);  
typedef void (*(*Func3)(int i, int j)) (int);

void print(int i) {
    cout << "print: " << i << endl;
}

Func fun(int i, int j) {
    cout << "fun: " << i <<" "<< j << endl; 
    return print;
}

int main(int argc, const char * argv[])
{
    Func f1 = print;
    f1(1);

    Func2 f2 = fun;
    f2(1, 2)(1);

    Func3 f3 = fun;
    f3(1, 2)(1);

    return 0;
}

2 '#'和'##'

#define STR(arg) #arg          // 宏STR(macro)展开时为"macro"
#define COMBINE(next) val->##next   // 则宏COMBINE(1)展开为val->next

3

点赞
收藏
评论区
推荐文章
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
西八老码 西八老码
4年前
今天就来花一点时间整理一下算法吧!
算法,就是计算机处理信息的一个步骤。是独立存在的一种处理问题的方法和思想,并不局限于具体的实现过程。排序冒泡cpublicstaticintBubbleSort(intarr)for(inti0;i<arr.length;i)for(intj0;j<a
虾米大王 虾米大王
3年前
Java代码004
code004.jsp代码片段,九九乘法表<%Stringstr"";for(inti1;i<9;i)for(intj1;j<i;j)strj""i""ji;str"";str"";%九九乘法表
九路 九路
5年前
Java实现排序算法
//冒泡排序publicstaticvoidbubbleSort(intdata){intndata.length;for(inti0;i<n;i){for(intj0;j<n;j){if(
Wesley13 Wesley13
4年前
JAVA 中数组的几种排序方法
1、数组的冒泡排序publicvoidbubbleSort(inta){intna.length;for(inti0;i<n1;i){for(intj0;j<n1;j)
Wesley13 Wesley13
4年前
Java中i++和++i的区别
publicstaticvoidmain(Stringargs){inti0;for(intj0;j<100;j){ii;}System.out.println(i);}输出结果是0,
可莉 可莉
4年前
19、C语言 —— typedef
1、关键字typedef可以为各种数据类型定义一个新的名字(别名)typedef int Integer;    // 为int起个别名叫IntegerInteger i  0;    // 相当于 int i  0;2、给指针定义一个别名// 之前我们是这样定义一个指针的char 
Stella981 Stella981
4年前
Linux int $0x80
exp1:sys\_exit().section.data.section.text.globl\_start\_start:       movl   $1,%eax    \_sys\_call       movl   $0,%ebx    \_return0       int    
Stella981 Stella981
4年前
JVM 字节码指令表
字节码助记符指令含义0x00nop什么都不做0x01aconst\_null将null推送至栈顶0x02iconst\_m1将int型1推送至栈顶0x03iconst\_0将int型0推送至栈顶0x04iconst\_1将int型1推送至栈顶0x05ic
Wesley13 Wesley13
4年前
9999二进制 及 x=x&(x
题目:以下代码结果是多少?\include<iostreamusingnamespacestd;int func(int x){int count\0;while(x){count;x\x&(x\1);
Wesley13 Wesley13
4年前
C 语言实例
30个人在一条船上,超载,需要15人下船。于是人们排成一队,排队的位置即为他们的编号。报数,从1开始,数到9的人下船。如此循环,直到船上仅剩15人为止,问都有哪些编号的人下船了呢?include<stdio.hintc0;inti1;intj0;