-1

MacOS10.7でXcode4.1を使用しています

#include <stdio.h>

int main (int argc, const char * argv[])
{
    int i, j;

    i = 1;
    j = 9;
    printf("i = %d and j = %d\n", i, j);

    swap(&i, &j);
    printf("\nnow i = %d and j = %d\n", i, j);

    return 0;
}

swap(i, j)
int *i, *j;
{
    int temp = *i;
    *i = *j;
    *j = temp;
}

「関数"swap"の暗黙の宣言はC99では無効です」という警告が表示されます

4

3 に答える 3

1

mainの前に関数を宣言します。

void swap(int *i, int *j);

/* ... */
int main...

そして後でそれを定義します:

void swap(int *i, int *j)
{
    /* ... */
}

または、2つをマージして、定義全体をの前に移動することもできますmain

于 2012-02-26T13:49:28.540 に答える
0

関数名は、C99で使用する前に宣言する必要があります。

swap関数を前に定義するか、関数mainの宣言を前に置くことができますmain

また、関数に古いスタイルの関数定義を使用していswapます。この形式はCの廃止された機能であり、関数を定義する方法は次のとおりです。

void swap(int *i, int *j)
{
    ...
}
于 2012-02-26T13:49:44.917 に答える