J'ai un exemple de code que je modifiais dans Visual Studio 2010 pour crypter et décrypter à l'aide de DES. Pour une raison quelconque, lorsque je compile le code, je continue d'obtenir ces deux erreurs LNK2019 qui font référence à la fonction des_encrypt1() et à la fonction des_set_key_checked(). Comme vu dans mon code, j'ai veillé à inclure le fichier des.h et ce fichier répertorie les définitions de ces deux fonctions. Je suis nouveau à C donc je ne suis pas sûr si c'est quelque chose de simple que je néglige mais toute aide serait grandement appréciée. Je ne suis pas sûr de savoir comment attacher correctement le code ici, donc désolé si le format semble bizarre, mais l'inclusion en gras ci-dessous devrait dire #include des.h.erreur LNK2019 lors de la compilation du code
#include <des.h>
#define ENC 1
#define DEC 0
//extern des_encrypt1(DES_LONG *data,DES_key_schedule *ks, int enc);
//void des_set_key_checked(const_des_block *key, des_key_schedule *schedule)
int main()
{
int k;
long in[2];
static unsigned char cbc_key[8] = {0x01,0x23,0x45,0x67,0x89,0xab,0xcd,0xef};
des_key_schedule key;
//struct timeval start, end;
//double t1, t2, t3, t4;
if ((k = des_set_key_checked(&cbc_key,key)) != 0)
printf("\nkey error\n");
in[0] = 3212314;
in[1] = 1231233;
printf("DES Clear Text: %ld%ld\n",in[0],in[1]);
//gettimeofday(&start, NULL);
//t1=start.tv_sec+(start.tv_usec/1000000.0);
des_encrypt1(in,key,ENC);
//gettimeofday(&end, NULL);
//t2=end.tv_sec+(end.tv_usec/1000000.0);
//printf("Time for Encryption\n", t2-t1);
printf("DES Encryption: %u%u\n",in[0],in[1]);
//gettimeofday(&start, NULL);
//t3=start.tv_sec+(start.tv_usec/1000000.0);
des_encrypt1(in,key,DEC);
//gettimeofday(&end, NULL);
//t4=end.tv_sec+(end.tv_usec/1000000.0);
//printf("Time for Decryption\n", t4-t3);
}
extern "C" peut-être? – leppie
Vous devez mettre en retrait le bloc de code de quatre espaces et également avoir une ligne vide au-dessus du début du bloc de code. Ensuite, il sera affiché correctement. –