我怎样才能克服“不安全”错误?

时间:2016-07-03 01:33:10

标签: c++ compiler-errors unsafe strcpy

我正在开展一个基本上控制停车场的项目。在我的代码的某些方面,我使用函数strcpy(),但我收到一个错误,说这个函数可能不安全。
这是我正在使用strcpy()的代码的一部分:

Automovel::Automovel(char * matr, Data ent, double comp) {
    //CONSTRUTOR POR ENUMERAÇAO:
    //RECEBE A MATRICULA, A DATA DE ENTRADA E O COMPRIMENTO DO CARRO
    //POSIÇAO E VALOR PAGO FICA INDEFINIDO
    matricula = new char[11];
    entry = new Data(ent);

    strcpy(matricula, matr);
    comprimento = comp;
    pos[0] = -1; pos[1] = -1;
    pago = -1;
}

我需要使用该函数,那么,我该如何解决这个错误呢?

2 个答案:

答案 0 :(得分:1)

您没有说,但我会假设您使用的是Visual Studio;那是我遇到错误的地方。

咬住子弹并使用strcpy_s等,或者这样做:

#pragma warning(disable : 4996) 

这会禁用导致strcpy出错的“功能”。

答案 1 :(得分:0)

您的问题是strcpy是不安全的'函数,因此您需要在Visual Studio中禁用unsafe warning,因此请关注these steps