エラーのヘルプが必要です: '{' トークンの前に識別子または '(' が必要です。メイン ファイルとソート ヒープ ファイルがあります。この 3 つのファイルはすべて別個のものであり、ターミナルでこのファイルを実行しようとしています。コマンド ライン端末でこのファイルを実行するために使用するのは次のとおりです。
gcc -std=c99 -DRAND -DHEAP -DTYPE=double -DPRINT main.c srtheap.c
これは私のコードです:
/*
*
* srt.h file
*
*/
#ifndef SRT_H
#define SRT_H
#include < string.h >
#define MAX_BUF 256
#define swap(qx,qy,sz)
{
do
char buf[MAX_BUF];
char *q1 = qx;
char *q2 = qy;
for (size_t m, ms = sz; ms > 0; ms -= m, q1 += m, q2 += m) {
m = ms < sizeof(buf) ? ms : sizeof(buf);
memcpy(buf, q1, m);
memcpy(q1, q2, m);
memcpy(q2, buf, m);
while (0)
}
void srtbubb(void *, size_t, size_t, int (*)(const void *, const void *));
void srtheap(void *, size_t, size_t, int (*)(const void *, const void *));
void srtinsr(void *, size_t, size_t, int (*)(const void *, const void *));
void srtmerg(void *, size_t, size_t, int (*)(const void *, const void *));
#endif /* SRT_H */