codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>

void save(char *nome,int dim)
{
	time_t sectime;
	struct tm *timeinfo;
	time(&sectime);
	timeinfo = localtime(&sectime);
	strftime(nome,dim,"%a_%d_%b_%Y_%X",timeinfo);
}

int main (void)
{
	int dim =29;
	FILE *ptr;
	char nome[dim];
	char ext[]=".txt";

	save(nome,dim);
	strcat(nome,ext);
	
	if(!(ptr=fopen(nome,"w")))
		printf("File has not been created\n");
	
	fclose(ptr);
	
	//qui se stampo la stringa me la da tutta.
	printf("Created File; %s\n",nome);

	return 0;
}
Il programma funziona perfettamente, su Linux
PS: ho cambiato leggermente il codice.. Ma funzionava gia principio..