共用方式為


_gcvt

轉換浮點數值為字串,儲存於緩衝區。 這個函式更安全的版本可用;請參閱 _gcvt_s

char *_gcvt( 
   double value,
   int digits,
   char *buffer 
);

參數

  • value
    要轉換的值。

  • digits
    儲存的有效位數。

  • buffer
    結果的儲存位置。

傳回值

_gcvt傳回數值字串的指標。

備註

_gcvt 函式轉換浮點數 value 為一個字元字串 (包含小數點和可能的正負號位元組) 並將字串儲存於 buffer 。 buffer 必須足以容納轉換後的值加上末尾的空字元,空字元會被自動加入。 如果緩衝區大小+1被使用,則digits 函式會覆寫緩衝區的結尾。 這是因為轉換後的字串包含小數點,而且可以包含標記和指數資訊。 沒有溢位的規則。 _gcvt 嘗試在十進位下產生 digits 位數。 如果不行,它將以指數格式產生 digits 位數。 末尾的零可能在轉換中被隱藏。

具有_CVTBUFSIZE 長度的buffer 足夠容納任何浮點數值。

這個函式會驗證它的參數。 如果 buffer 是 NULL,則叫用無效參數處理常式,如 參數驗證 中所述。 如果允許繼續執行,函式將 errno 設置為 EINVAL 並回傳 NULL 。

需求

常式

必要的標頭

_gcvt

<stdlib.h>

如需更多關於相容性的資訊,請參閱入門介紹中的 相容性 (Compatibility)

範例

// crt_gcvt.c
// compile with: /W3
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int main( void )
{
   char buffer[_CVTBUFSIZE];
   double value = -1234567890.123;
   printf( "The following numbers were converted by _gcvt(value,12,buffer):\n" );
   _gcvt( value, 12, buffer ); // C4996
   // Note: _gcvt is deprecated; consider using _gcvt_s instead
   printf( "buffer: '%s' (%d chars)\n", buffer, strlen(buffer) );
   value *= 10;
   _gcvt( value, 12, buffer ); // C4996
   printf( "buffer: '%s' (%d chars)\n", buffer, strlen(buffer) );
   value *= 10;
   _gcvt( value, 12, buffer ); // C4996
   printf( "buffer: '%s' (%d chars)\n", buffer, strlen(buffer) );
   value *= 10;
   _gcvt( value, 12, buffer ); // C4996
   printf( "buffer: '%s' (%d chars)\n", buffer, strlen(buffer) );

   printf( "\n" );
   value = -12.34567890123;
   _gcvt( value, 12, buffer ); // C4996
   printf( "buffer: '%s' (%d chars)\n", buffer, strlen(buffer) );
   value /= 10;
   _gcvt( value, 12, buffer ); // C4996
   printf( "buffer: '%s' (%d chars)\n", buffer, strlen(buffer) );
   value /= 10;
   _gcvt( value, 12, buffer ); // C4996
   printf( "buffer: '%s' (%d chars)\n", buffer, strlen(buffer) );
   value /= 10;
   _gcvt( value, 12, buffer ); // C4996
   printf( "buffer: '%s' (%d chars)\n", buffer, strlen(buffer) );
}
  

.NET Framework 對等用法

System::Convert::ToString

請參閱

參考

資料轉換

浮點支援

atof、_atof_l、_wtof、_wtof_l

_ecvt

_fcvt