Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

396
Visualizações
advertencia: el uso de `tmpnam' es peligroso, mejor usa `mkstemp'

(Nota: esta no es una pregunta duplicada)

Estoy usando la función libc tmpnam y recibo la siguiente advertencia:

 warning: the use of 'tmpnam' is dangerous, better use 'mkstemp'

Mi pregunta no es "cómo deshabilitar la advertencia", sino "¿qué función debo usar en su lugar"? mkstemp no ayuda, porque no estoy tratando de crear un archivo temporal, estoy creando un directorio temporal. Y AFAIK, no hay una función API para eso.

Entonces, si se supone que no debo usar tmpnam , ¿ qué se supone que debo usar?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Estás buscando mkdtemp :

 mkdtemp - create a unique temporary directory

p.ej,

 #include <stdlib.h> #include <string.h> ... char templatebuf[80]; char *mkdirectory = mkdtemp(strcpy(templatebuf, "/tmp/mkprogXXXXXX"));

usando strcpy para asegurarse de que el parámetro pasado a mkdtemp se pueda escribir (c89), o

 #include <stdlib.h> ... char templatebuf[] = "/tmp/mkprogXXXXXX"; char *mkdirectory = mkdtemp(templatebuf);

con c99.

Dado que la función es "nueva" (solo estandarizada en los últimos diez años, aunque se proporcionó a mediados de la década de 1990 en Linux), debe activar la función en los archivos de encabezado con una definición de preprocesador (que puede diferir de una plataforma a otra). otro). Lo más simple para Linux es definir _GNU_SOURCE , por ejemplo,

 gcc -D_GNU_SOURCE -o foo foo.c
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda