Solved

How to get in C++ this time format HH.MM.SS?

Posted on 2008-09-30
7
1,872 Views
Last Modified: 2012-06-27
Hello Experts,
how can i get this time format?
for ex. 17.22.34

i need a string as result
0
Comment
Question by:kagami01
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
7 Comments
 
LVL 53

Expert Comment

by:Infinity08
ID: 22606311
You can use strftime :

        http://www.cplusplus.com/reference/clibrary/ctime/strftime.html
time_t now = time(0);
char timestamp[10] = "";
strftime (timestamp, 10,"%H.%M.%S", localtime(&now));

Open in new window

0
 
LVL 14

Expert Comment

by:wayside
ID: 22606426
#include <sys/types.h>
#include <sys/timeb.h>

struct tm *current_time;

current_time = localtime(time());

char timebuf[20] = { 0 } ;

strftime(timebuf, 20, "%H.%M.%S", current_time);

0
 

Author Comment

by:kagami01
ID: 22606631
i can use even the results of strftime even with asctime??
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 53

Expert Comment

by:Infinity08
ID: 22606977
>> i can use even the results of strftime even with asctime??

asctime is another (fixed) way of formatting a time into a string. strftime allows you to choose the format, so you'll need strftime as I showed.
0
 

Author Comment

by:kagami01
ID: 22607076
so how to convert the output of strftime in a string??
0
 
LVL 53

Accepted Solution

by:
Infinity08 earned 140 total points
ID: 22607111
>> so how to convert the output of strftime in a string??

strftime already places its output in a string. In my example, the string is called timestamp. You can output it by adding this for example :
time_t now = time(0);
char timestamp[10] = "";
strftime (timestamp, 10,"%H.%M.%S", localtime(&now));
 
std::cout << timestamp << std::endl;                     // <--- this

Open in new window

0
 
LVL 53

Expert Comment

by:Infinity08
ID: 22607132
Or if you mean you want it as an std::string, you can always create one from the timestamp buffer :
time_t now = time(0);
char timestamp_buf[10] = "";
strftime (timestamp_buf, 10,"%H.%M.%S", localtime(&now));
 
std::string timestamp = std::string(timestamp_buf);
std::cout << timestamp << std::endl;

Open in new window

0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Written by John Humphreys C++ Threading and the POSIX Library This article will cover the basic information that you need to know in order to make use of the POSIX threading library available for C and C++ on UNIX and most Linux systems.   [s…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
The goal of the tutorial is to teach the user how to use functions in C++. The video will cover how to define functions, how to call functions and how to create functions prototypes. Microsoft Visual C++ 2010 Express will be used as a text editor an…
The viewer will learn how to user default arguments when defining functions. This method of defining functions will be contrasted with the non-default-argument of defining functions.

624 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question