C函数调用循环

Mak*_*mbe 4 c loops

假设我有一些名为Function1,Function2,Function3等的函数.有没有办法每次调用循环中的一个函数?

for(i=1;i<Max;i++)
{
Function^();
}
Run Code Online (Sandbox Code Playgroud)

wal*_*ruz 8

试试这个:

#include <stdio.h>

void func1(void)
{
    printf( "func1\n" );
}

void func2(void)
{
    printf( "func2\n" );
}

void func3(void)
{
    printf( "func3\n" );
}

typedef void ( *func )(void);

int main(void)
{
    func m_func[3] = {func1, func2, func3};
    int index;

    for( index = 0; index < 3; index++ )
    {
        m_func[index]();
    }

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

  • @RangoTango:恐怕无法做到.http://stackoverflow.com/questions/16216585/token-pasting-in-c-using-a-variable-that-increments (3认同)
  • @PaulR:C11草案标准`第5.1.2.2.3节程序终止[...]到达},终止主函数返回值0. [...]` (2认同)