Para archivos hay varias opciones, te sugiero que busques un tutorial en google.
CGI es una manera de comunicar aplicaciones, el servidor web (Apache, IIS, etc) ejecuta tu aplicacion con unos parametros especificos (user=jose, ex ej.) y el output que genera tu aplicacion con printf(stdout) por ejemplo es lo que va a enviarle el servidor web al cliente web (Internet Explorer, Mozilla, Opera).
Para un hora.cgi podrias hacer esto:
Código:
#include <memory.h>
#include <stdio.h>
#include <time.h>
#include <malloc.h>
void main()
{
struct tm *tmTime;
time_t ahora;
time(&ahora);
tmTime = gmtime(&ahora);
char *buff = (char*)malloc(1024);
memset(buff, 0, 1024);
strftime(buff, 1024, "<HTML><B>Hora actual:%H:%M:%S</B></HTML>", tmTime);
printf("Content-type: text/html\r\n\r\n");
printf(buff);
free(buff);
}
Necesitas un servidor para probarlo, te recomiendo Apache.
http://httpd.apache.org/docs/howto/cgi.html