Aumente o tamanho do buffer, o cpuinfo aqui (4 cores) deu 3,2kb, mas o buffer é de 1k.
Você pode ainda mudar a leitura do cpuinfo para ler apenas 1k e esperar que o cpuspeed venha nessa remessa. Em 10 de julho de 2011 17:35, Jorge Barros de Abreu <[email protected]> escreveu: > Olá. > > O programa adiante compila sem nenhuma mensagem de erro mas não funciona nem > no 13.1 nem no 13.37. > > Pode ser que seja pelo fato de ser um código antigo. > ???Se for isso o que deve ser mudado??? > > O código compilou em uma outra distro sem problemas e funcionou. > > Se alguém puder me corrigir eu agradeço. > > > > #include <stdio.h> > #include <string.h> > > /* Returns the clock speed of the system's CPU in MHz, as reported by > /proc/cpuinfo. On a multiprocessor machine, returns the speed of > the first CPU. On error returns zero. */ > > float get_cpu_clock_speed () > { > FILE* fp; > char buffer[1024]; > size_t bytes_read; > char* match; > float clock_speed; > > /* Read the entire contents of /proc/cpuinfo into the buffer. */ > fp = fopen ("/proc/cpuinfo", "r"); > bytes_read = fread (buffer, 1, sizeof (buffer), fp); > fclose (fp); > /* Bail if read failed or if buffer isn't big enough. */ > if (bytes_read == 0 || bytes_read == sizeof (buffer)) > return 0; > /* NUL-terminate the text. */ > buffer[bytes_read] = '\0'; > /* Locate the line that starts with "cpu MHz". */ > match = strstr (buffer, "cpu MHz"); > if (match == NULL) > return 0; > /* Parse the line to extrace the clock speed. */ > sscanf (match, "cpu MHz : %f", &clock_speed); > return clock_speed; > } > > > int main () > { > printf ("CPU clock speed: %4.0f MHz\n", get_cpu_clock_speed ()); > return 0; > } > > -- > Data Estelar 2455745,897766 > http://sites.google.com/site/ficmatinf > Desejo-lhe Paz, Vida Longa e Prosperidade. > São Bem Vindas Mensagens no Formato texto UTF-8 com Acentos. > > -- > Data Estelar 2455753,199271 > http://sites.google.com/site/ficmatinf > Desejo-lhe Paz, Vida Longa e Prosperidade. > São Bem Vindas Mensagens no Formato texto UTF-8 com Acentos. > > -- > GUS-BR - Grupo de Usuários de Slackware Brasil > http://www.slackwarebrasil.org/ > http://groups.google.com/group/slack-users-br > > Antes de perguntar: > http://www.istf.com.br/perguntas/ > > Para sair da lista envie um e-mail para: > [email protected] -- GUS-BR - Grupo de Usuários de Slackware Brasil http://www.slackwarebrasil.org/ http://groups.google.com/group/slack-users-br Antes de perguntar: http://www.istf.com.br/perguntas/ Para sair da lista envie um e-mail para: [email protected]

