Re: [Linux-programlama] C'de zaman fonksiyonları hakkında bir soru?

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: recep yagci (ryagci23@gmail.com)
Date: Thu 09 Jun 2005 - 19:27:45 EEST


Merhaba,
problemin sebebi nowtm_start i struct tm * tipinde bir pointer olarak
tanimladiginizdan kaynaklaniyor,
localtime in man sayfasina bakarsak (The localtime() function converts the
calendar time timep to broken-time representa-tion) seklinde bir aciklama
var,sizde nowtm_start i pointer olarak tanimladiginiz icin localtime
degistikce o da degisiyor,programi asagidaki sekilde degistirirsek ve start
time i static bir tm structure ina alirsak dogru sonuc elde ediliyor.
Kolay gelsin...

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

int main(){

time_t binarytime1,binarytime2;
struct tm *nowtm_start,*nowtm_end;
struct tm timer;

time(&binarytime1);
nowtm_start = localtime( &binarytime1 );
timer=*nowtm_start;

printf("program uyumaya basliyor\n");
sleep(10);
printf("program uyandi\n");
time( &binarytime2 );
nowtm_end = localtime ( &binarytime2 );

printf( "timer %s\n",asctime(&timer));
printf( "start %s\n",asctime(nowtm_start));
printf( "end %s\n",asctime(nowtm_end));

printf("now1=%d\n",binarytime1);
printf("now2=%d\n",binarytime2);

return 0;
}

cikti:

----
program uyumaya basliyor
program uyandi
timer Thu Jun 9 19:23:26 2005

start Thu Jun 9 19:23:36 2005

end Thu Jun 9 19:23:36 2005

now1=1118334206 now2=1118334216

On 6/9/05, Motorola <abdullah.kayaalp@gmail.com> wrote: > > arkadaslar merhaba, > c'de mysql'e ulasip bir tabloyu listeleyen cok basit bir program > yazdim.listeleme isinin nekadar zaman aldigini bulmaya calisiyorum. > ancak garip degerler elde ediyorum. > kod asagiya yapistirdim. sonuclarda kodun devaminda bu konuda > yorumlarinizi bekliyorum... > > #include <stdlib.h> > #include <stdio.h> > #include <string.h> > #include <time.h> > #include </usr/local/mysql/include/mysql/mysql.h> > > int main(){ > MYSQL *conn; > MYSQL_RES *res; > MYSQL_ROW row; > > char *server = "localhost"; > char *user = "root"; > char *password = "root"; > char *database = "buyuk"; > > time_t binarytime1,binarytime2; > struct tm *nowtm_start,*nowtm_end; > > time(&binarytime1); > nowtm_start = localtime( &binarytime1 ); > > > conn = mysql_init(NULL); > > /* Connect to database */ > if (!mysql_real_connect(conn, server,user, password, database, 0, NULL, > 0)) > { > fprintf(stderr, "%s\n", mysql_error(conn)); > exit(0); > } > > /* send SQL query */ > if (mysql_query(conn, "SELECT * FROM ak_matris limit 1000000" )) > { > fprintf(stderr, "%s\n", mysql_error(conn)); > exit(0); > } > > res = mysql_use_result(conn); > > /* output fields 1 and 2 of each row */ > while ((row = mysql_fetch_row(res)) != NULL) > printf("%s | %s | %s\n", row[0], row[1],row[2]); > mysql_close(conn); > > time( &binarytime2 ); > nowtm_end = localtime ( &binarytime2 ); > > > printf( "start %s\n",asctime(nowtm_start)); > printf( "end t %s\n",asctime(nowtm_end)); > > printf("now1=%d\n",binarytime1); > printf("now2=%d\n",binarytime2); > > } > > birmilyon kayıtın listelenmesi ölçülebilir bir zaman aliyor ancak > programimin ciktisi asagidaki sekilde: > > > start Thu Jun 9 19:48:11 2005 > end t Thu Jun 9 19:48:11 2005 > > now1=1118335652 > now2=1118335691 > > neyi atilyorum, neyi gozden kaciriyorum. yorumlarinizi bekliyorum. > > _______________________________________________ > Linux-programlama mailing list > Linux-programlama@liste.linux.org.tr > http://liste.linux.org.tr/mailman/listinfo/linux-programlama > > >

_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.