ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s
Bir zaman değeri bir string öğesine dönüştürmeniz ve yerel saat dilimi ayarlarını yapabilirsiniz.Bunlar sürümleridir ctime, _ctime64, _wctime, _wctime64 açıklandığı gibi güvenlik geliştirmeleri ile crt güvenlik özellikleri.
errno_t ctime_s(
char* buffer,
size_t numberOfElements,
const time_t *time
);
errno_t _ctime32_s(
char* buffer,
size_t numberOfElements,
const __time32_t *time
);
errno_t _ctime64_s(
char* buffer,
size_t numberOfElements,
const __time64_t *time )
;
errno_t _wctime_s(
wchar_t* buffer,
size_t numberOfElements,
const time_t *time
);
errno_t _wctime32_s(
wchar_t* buffer,
size_t numberOfElements,
const __time32_t *time
);
errno_t _wctime64_s(
wchar_t* buffer,
size_t numberOfElements,
const __time64_t *time
);
template <size_t size>
errno_t _ctime32_s(
char (&buffer)[size],
const __time32_t *time
); // C++ only
template <size_t size>
errno_t _ctime64_s(
char (&buffer)[size],
const __time64_t *time
); // C++ only
template <size_t size>
errno_t _wctime32_s(
wchar_t (&buffer)[size],
const __time32_t *time
); // C++ only
template <size_t size>
errno_t _wctime64_s(
wchar_t (&buffer)[size],
const __time64_t *time
); // C++ only
Parametreler
[Çıkış]buffer
26 Karakter tutacak büyüklükte olmalıdır.Karakter dize sonucunu gösteren bir işaretçi veya NULLise:timegece yarısı, 1 Ocak 1970, utc önceki bir tarihi temsil eder.
Kullanırsanız, _ctime32_s veya _wctime32_s ve time 03: 14: 07 19 Ocak 2038 tarihi temsil eder.
Kullanırsanız, _ctime64_s veya _wctime64_s ve time 23: 59: 59, 31 Aralık 3000 utc tarihi temsil eder.
Kullanırsanız, _ctime_s veya _wctime_s, bu işlevler önceki işlevleri sarıcıları.Açıklamalar bölümüne bakın.
[in]numberOfElements
Arabellek boyutu.t [in]ime
Saklı bir süre için işaretçi.
Dönüş Değeri
Başarılı olursa sıfır.Geçersiz bir parametre bir hata varsa, geçersiz parametre işleyicisi, açıklandığı şekilde çağrılır Parametre doğrulama.Yürütülmesine devam etmek için izin, bir hata kodu döndürülür.Hata kodları HATANO tanımlanır.H; Bu hataların listesi için bkz: errno.Her hata durumu için atılan gerçek hata kodları aşağıdaki tabloda gösterilmiştir.
Hata koşulları
buffer |
numberOfElements |
time |
Return |
İçindeki değerbuffer |
---|---|---|---|---|
NULL |
herhangi bir |
herhangi bir |
EINVAL |
Modifiye edilmemiş |
Değil NULL (noktaları için geçerli bellek) |
0 |
herhangi bir |
EINVAL |
Modifiye edilmemiş |
DeğilNULL |
0 < Boyut < 26 |
herhangi bir |
EINVAL |
Boş dize |
DeğilNULL |
> = 26 |
NULL |
EINVAL |
Boş dize |
DeğilNULL |
> = 26 |
< 0 |
EINVAL |
Boş dize |
Notlar
ctime_s İşlevi olarak depolanan bir zaman değeri dönüştürür bir time_t yapısı içinde bir karakter dizesi.time Değer bir çağrıya elde genellikle zaman, gece yarısından itibaren saniye cinsinden geçen hangi verir (00: 00), 1 Ocak 1970'den itibaren Eşgüdümlü Evrensel Saat (utc).Dönüş değeri dize tam olarak 26 karakter içerir ve formu vardır:
Wed Jan 02 02:03:55 1980\n\0
24 Saatlik zaman biçimi kullanılır.Tüm alanları bir sabit genişliğe sahip olur.Yeni satır karakteri ('\n') ve boş karakter ('\0') dizenin son iki pozisyon kaplar.
Dönüştürülen karakter dizesi de yerel saat dilimi ayarlara göre ayarlanır.Bkz: time, _ftime, ve localtime32_s yerel saat yapılandırma hakkında daha fazla bilgi için İşlevler ve _tzset işlev genel değişkenleri ve saat dilimi ortamı tanımlama hakkında daha fazla bilgi için.
_wctime32_sve _wctime64_s geniş karakter sürümü olan _ctime32_s ve _ctime64_s; geniş karakter dizesi için bir işaretçi döndürülüyor.Otherwise, _ctime64_s, _wctime32_s, and _wctime64_s behave identically to _ctime32_s.
ctime_sdeğerlendiren bir satır içi işlevi _ctime64_s ve time_t eşdeğeri olan __time64_t.Yorumlamak için derleyici zorlamak gerekirse time_t eski 32-bit olarak time_t, sizin tanımladığınız _USE_32BIT_TIME_T.Bunu neden olur ctime_s için değerlendirmek için _ctime32_s.Bu, uygulamanızı 18 Ocak 2038 sonra başarısız olabilir ve 64-bit platformlarda izin verilmez çünkü önerilmez.
C++'da, bu işlevler tarafından şablon aşırı kolaylaştırılmıştır; aşırı arabellek uzunluğu otomatik olarak size baðýmsýz deðiþkeni belirtmek için gereksiz gerçekleştirip.Daha fazla bilgi için bkz. Güvenli şablon aşırı yükleme.
Genel metin yordamı eşlemeleri
TCHAR.H yordamına girildi |
_UNICODE & _mbcs tanımlı değil |
Tanımlanan _mbcs |
Tanımlanan _UNICODE |
---|---|---|---|
_tctime_s |
ctime_s |
ctime_s |
_wctime_s |
_tctime32_s |
_ctime32_s |
_ctime32_s |
_wctime32_s |
_tctime64_s |
_ctime64_s |
_ctime64_s |
_wctime64_s |
Gereksinimler
Yordamı |
Gerekli başlık |
---|---|
ctime_s, _ctime32_s, _ctime64_s |
<time.h> |
_wctime_s, _wctime32_s, _wctime64_s |
<time.h> veya <wchar.h> |
Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.
Kitaplıkları
Tüm sürümleri c çalışma zamanı kitaplıkları.
Örnek
// crt_wctime_s.c
/* This program gets the current
* time in time_t form and then uses _wctime_s to
* display the time in string form.
*/
#include <time.h>
#include <stdio.h>
#define SIZE 26
int main( void )
{
time_t ltime;
wchar_t buf[SIZE];
errno_t err;
time( <ime );
err = _wctime_s( buf, SIZE, <ime );
if (err != 0)
{
printf("Invalid Arguments for _wctime_s. Error Code: %d\n", err);
}
wprintf_s( L"The time is %s\n", buf );
}
Örnek Çıktı
The time is Fri Apr 25 13:03:39 2003
.NET Framework Eşdeğeri
Ayrıca bkz.
Başvuru
ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
gmtime_s, _gmtime32_s, _gmtime64_s