Hi Sandip, I think that you know on the 64-bit Unix/Linux/OS X platforms, long is 64-bit whereas int and INTEGER are 32-bit, so return directly Integer unexpected problems may occur.
Cheers, Bill 2014-03-17 13:24 GMT+08:00 Sandip Nandi <sanna...@umail.iu.edu>: > Hi Bill , > > The following C code may help you , time_t is typedef to long int > > SEXP getTime() { > > time_t current_time; > char* c_time_string; > current_time = time(NULL); > c_time_string = ctime(¤t_time); > > return mkString(c_time_String); // or if you want to return as int > vector return scalarInt(current_time); > } > > If you feel anything wrong , I will be very happy to know . > > Thanks, > Sandip > > > On Sun, Mar 16, 2014 at 9:54 PM, Bill Wang <freecn...@gmail.com> wrote: > >> Hi Dirk, >> >> Thanks for your reply, I neede convert time_t to R type in C code, can not >> use Rcpp. Maybe Rcpp source code could help me. >> >> Cheers, >> Bill >> >> >> 2014-03-16 22:55 GMT+08:00 Dirk Eddelbuettel <e...@debian.org>: >> >> > >> > On 16 March 2014 at 18:36, Bill Wang wrote: >> > | I am writing a R extensions, and I need pass time_t to R in C, but I >> > don't >> > | know how to do. >> > | Can you give me some help? do not use double directly. >> > >> > Just treat it as an int: >> > >> > R> library(Rcpp) >> > R> cppFunction("Date time_t2date(time_t what) { return((int) what); >> }") >> > R> time_t2date(0) >> > [1] "1970-01-01" >> > R> time_t2date( Sys.Date() ) >> > [1] "2014-03-16" >> > R> >> > >> > >> > Here I use Rcpp to define the 'time_t2date' function on the fly. >> > >> > It takes the time_t and returns a Date type (which here is a C++ Date >> type >> > mapping to the R Date -- you can ignore that, but will have to write the >> > legwork yourself if you don't use Rcpp). >> > >> > As 'time_t' is 'long int' on my system, so I cast it to int. The rest is >> > automagic (thanks to RcpP). >> > >> > Notice that I also get today's date down and up correctly. >> > >> > See 'Writing R Extensions' for the details at the C level. >> > >> > See the Rcpp documentation (and, if I may, my book) for details on Rcpp >> if >> > that interests you. >> > >> > Dirk >> > >> > -- >> > Dirk Eddelbuettel | e...@debian.org | http://dirk.eddelbuettel.com >> > >> >> >> >> -- >> >> *Travel | Programming* >> *http://freecnpro.net* <http://freecnpro.net> >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-devel@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-devel >> > > -- *Travel | Programming* *http://freecnpro.net* <http://freecnpro.net> [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel