Поделиться через


Функция StrFromTimeIntervalW (shlwapi.h)

Преобразует интервал времени, указанный в миллисекундах, в строку.

Синтаксис

int StrFromTimeIntervalW(
  [out] PWSTR pszOut,
        UINT  cchMax,
        DWORD dwTimeMS,
        int   digits
);

Параметры

[out] pszOut

Тип: PTSTR

Указатель на буфер, который, когда эта функция возвращается успешно, получает преобразованное число.

cchMax

Тип: UINT

Размер pszOutв символах. Если cchMax равно нулю, StrFromTimeInterval вернет минимальный размер буфера символов, необходимый для хранения преобразованной строки. В этом случае pszOut не будет содержать преобразованную строку.

dwTimeMS

Тип: DWORD

Интервал времени в миллисекундах.

digits

Тип: int

Максимальное число значимых цифр, представленных в pszOut. Ниже приведены некоторые примеры.

dwTimeMS Цифр pszOut
34000 3 34 с
34000 2 34 с
34000 1 30 с
74000 3 1 мин 14 с
74000 2 1 мин 10 с
74000 1 1 мин

Возвращаемое значение

Тип: int

Возвращает количество символов в pszOut, за исключением конца символа NULL.

Замечания

Значение времени, возвращаемое в pszOut, всегда будет находиться в форме чч часов мм минут секунд секунд. Время, превышающее двадцать четыре часа, не преобразуется в дни или месяцы. Доли секунд игнорируются.

Примеры

#include <windows.h>
#include <iostream.h>
#include "Shlwapi.h"

void main(void)
{
    char TimeString[256];
    char *pszOut;
    pszOut = TimeString;

    cout << "The return value from the call to"
         << "\nthe function StrFromTimeInterval will"
         << "\nreturn the number of elements in the buffer: " << endl;

    cout << "\nThe return from StrFromTimeInterval is " 
         << StrFromTimeInterval(pszOut,30, 34000,30);

    cout << "\nThe contents of the TimeString Buffer " << pszOut << endl;

    cout << "The return from StrFromTimeInterval is " 
         << StrFromTimeInterval(pszOut,30, 74000,3);

    cout << "\nThe contents of the TimeString Buffer " << pszOut << endl;

    cout << "The return from StrFromTimeInterval is " 
         << StrFromTimeInterval(pszOut,30, 74000,2);

    cout << "\nThe contents of the TimeString Buffer " << pszOut << endl;

    cout << "The return from StrFromTimeInterval is " 
         << StrFromTimeInterval(pszOut,30, 74000,1)
         << "\nThe contents of the TimeString Buffer " << pszOut << endl;
}

OUTPUT:
- - - - -
The return value from the call to
the function StrFromTimeInterval will
return the number of elements in the buffer:

The return from StrFromTimeInterval is 7
The contents of the TimeString Buffer  34 sec
The return from StrFromTimeInterval is 13
The contents of the TimeString Buffer  1 min 14 sec
The return from StrFromTimeInterval is 13
The contents of the TimeString Buffer  1 min 10 sec
The return from StrFromTimeInterval is 6
The contents of the TimeString Buffer  1 min

Заметка

Заголовок shlwapi.h определяет StrFromTimeInterval как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный, Windows XP [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка shlwapi.h
библиотеки Shlwapi.lib
DLL Shlwapi.dll (версия 4.71 или более поздняя)