TMP_MAX  Macro

O macro TMP_MAX expande para um inteiro que indica o número mínimo de vezes que a função tmpnam pode ser chamada e ainda gerar um nome de arquivo único.

O padrão C especifica que o valor de TMP_MAX deve ser, ao menos, 25. Além disso, é permitido que a função tmpfile faça uso deste limite de nomes.

Exemplo
#include <stdio.h>

int main() {
    for (int i = 0; i < TMP_MAX; i++) {
        tmpnam(NULL); /* todas essas chamadas geram um nome de arquivo único */
    }
    tmpnam(NULL); /* não é garantido que essa chamada gere um nome de arquivo único -- ele pode ser igual a um nome já gerado */

    return 0;
}