需要帮助解决错误:预期标识符或 '(' 在 '{' 标记之前。我有一个主文件和一个排序堆文件。这三个文件都是独立的,我正在尝试在终端上运行这些文件。命令行我用来在终端上运行这个文件是:
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 */