Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

ฟังก์ชัน strftime() ใน C/C++


ฟังก์ชัน strftime() ใช้เพื่อจัดรูปแบบเวลาและวันที่เป็นสตริง มันถูกประกาศในไฟล์ส่วนหัว "time.h" ในภาษา C ส่งคืนจำนวนอักขระทั้งหมดที่คัดลอกไปยังสตริง หากสตริงมีขนาดน้อยกว่าอักขระที่มีขนาด คืนค่าศูนย์

นี่คือไวยากรณ์ของ strftime() ในภาษา C

size_t strftime(char *string, size_t size, const char *format, const struct tm *time_pointer)

ที่นี่

สตริง − ตัวชี้ไปยังอาร์เรย์ปลายทาง

ขนาด − จำนวนอักขระสูงสุดที่จะคัดลอก

รูปแบบ − ตัวระบุรูปแบบพิเศษบางตัวเพื่อแสดงเวลาในหน่วย TM

ตัวชี้เวลา − ตัวชี้ไปที่โครงสร้าง tm ที่มีโครงสร้างเวลาตามปฏิทิน

นี่คือตัวอย่าง strftime() ในภาษา C

ตัวอย่าง

#include <stdio.h>
#include <time.h>
int main () {
   time_t tim;
   struct tm *detl;
   char buf[80];
   time( &tim );
   detl = localtime( &tim );
   strftime(buf, 20, "%x - %I:%M%p", detl);
   printf("Date & time after formatting : %s", buf );
   return(0);
}

ผลลัพธ์

Date & time after formatting : 10/23/18 - 10:33AM

ในโปรแกรมข้างต้น มีการประกาศตัวแปรสามตัวของประเภทข้อมูลหลายประเภท ฟังก์ชัน localtime() จะจัดเก็บวันที่และเวลาปัจจุบัน ฟังก์ชัน strftime() กำลังคัดลอกสตริงและจัดรูปแบบในโครงสร้างพิเศษบางอย่างโดยใช้ตัวระบุพิเศษบางตัว

detl = localtime( &tim );
strftime(buf, 20, "%x - %I:%M%p", detl);