평문이랑 키 입력받아서 암호문 출력해주는 함수를 만들려고 하는데
uint8_t *encrypt(uint8_t* pt, uint8_t key);
해서 내부적으로 malloc같은거로 할당하고 반환하는게 나을까 아님
int encrypt(uint8_t* pt, uint8_t* key, uint8_t* out);
이렇게 인자로 아웃풋 버퍼 받아서 채워주는 방식이 나을까?
후자는 OOB나 NULL같은게 들어왔을때 곤란할거같은데 전자는 먼가 할당까지 하는게 맞아 싶기도 하고...
후자로 해라 전자는 스마트 포인터가 아닌 이상 누수를 유도하는 방힉이다
C 표준함수나 다른 프로젝트에서 로우포인터를 반환하는 건 할당 & 반환이 아니라 위치만 반환하는 경우가 대부분이다
후자가 낫다.
C면 후자, C++이면 string - dc App
std::string 왜안씀?
후자가 나음 - dc App