我试图制作压缩和解压缩文件的程序。我想为这种类型的操作创建一个枚举类型:typedef enum { COMPRESS, DECOMPRESS } operation;
。 问题是,我得到的4个错误:错误C2365:重新定义枚举和错误2086重新定义
Error 1 error C2365: 'COMPRESS' : redefinition; previous definition was 'enumerator'
Error 2 error C2086: 'COMPRESS' : redefinition
Error 3 error C2365: 'DECOMPRESS' : redefinition; previous definition was 'enumerator'
Error 4 error C2086: 'DECOMPRESS' : redefinition
我不明白什么是错的,因为我做了一个枚举就像是对布尔值,它工作正常:typedef enum { FALSE, TRUE } boolean;
。
编辑: 我被要求添加整个.h文件中的类型定义是:
#include <stdio.h>
typedef enum { COMPRESS, DECOMPRESS } operation;
void compress(FILE * file);
void compressArchive(FILE * files[]);
void decompress(FILE * file);
void decompressArchive(FILE * files[]);
和N.M.说我做#include "huffman.h"
在另一个文件,general.h
(这需要operation
类型)和huffman.c
和main.c
。
我做错了什么?
谢谢。
看来,令牌'COMPRESS'和'DECOMPRESS'在另一个名为枚举使用'enumerator'。 –
@RSahu我把它改成了一些乱码只是为了检查,但它仍然不起作用,同样的问题(CMPR,DCMPR)。 – shoham
我的魔晶说你有一个包含文件而没有包含守卫。 –