Warnings en servidor hecho en c++

Jose
26 de Agosto del 2010
hola a todos tengo un problema en esta sección de mi servidor, el aviso que me da al compilar es:


aviso: el formato ‘%zi’ espera el tipo ‘signed size_t’, pero el argumento 3 es de tipo ‘__off_t’


y la sección del codigo en la que salta el warning es:

if ((ex == ".gif") || (ex == ".jpg")) {

string contenido;

char tamano[15];

sprintf(tamano,"%zi",p.st_size);

if (ex == ".gif")contenido = "image/gif";

if (ex == ".jpg")contenido = "image/jpg";

respuesta = string(version) +" 200 OKn"+keepAlive+"Date: "+string(ctime(&tiempo))+"Server: Apache/2.2.3 (Debian)nLast-Modified: "+time+"Content-length: "+string(tamano)+"nContent-Type: "+contenido +"nn";

t = respuesta.length();.................

alguien sabe como puedo evitar esos warnings?

Un saludo a todos