forte編譯器中是否有任何編譯器選項在Solaris 5.8中創建time_t 64位?我需要開發32位的庫,我無法將其更改爲64位,因爲它會影響現有的客戶端應用程序。在solaris中如何解決時間函數2038問題
2
A
回答
4
2
簡短的回答是否定的,在32位應用程序中,編譯器中沒有選項可以使time_t成爲64位值。它被擴展到64位應用程序的64位值,因爲這似乎是一個很好的改變,但爲了符合所有各種標準,它必須作爲32位應用程序的有符號32位值保存。
如果您想使用64位值來表示時間,那麼您將必須確保返回到現有客戶端應用程序的任何值在返回時不會溢出。如果它們發生溢出,那麼您需要支持將其指定給客戶端應用程序,並瞭解它們將如何處理這些值,這些值都是庫的API的一部分。
相關問題
- 1. 如何在簡單的HXT函數中解決這個問題?
- 2. 函數在函數表達式中不可見,如何解決這個問題?
- 3. 什麼是2038年的問題?如何找出現有代碼是否存在這個問題並解決它?
- 4. 如何解決Sencha Touch中clearFilter()函數的性能問題?
- 5. 如何解決!php 5.4中的空函數問題
- 6. 如何解決PHP中的類/函數聲明問題..?
- 7. 如何在Eclipse中解決此問題
- 8. 如何在torch7中解決HEX問題?
- 9. 如何在IE7中解決此問題?
- 10. 解決這個問題是否有解析函數在mysql中?
- 11. 如何解決ASP.NET Web站點中長時間的瞥見線時間問題?
- 12. 如何解決計時器問題
- 13. 如何解決超時問題(Ruby,Rails)
- 14. 如何解決Android JobScheduler超時問題?
- 15. 如何解決在Eclipse中的問題「無法解決」?
- 16. 如何在上傳文件名中解決空間問題
- 17. 如何解決空間不足的問題在MongoDB中
- 18. 如何解決SecurityException問題?
- 19. 如何解決swrevealviewcontroller問題
- 20. 如何解決SVN:externals問題
- 21. 如何解決jQuery問題?
- 22. 如何解決問題parent.document
- 23. 如何解決IE7問題
- 24. 如何解決DataGridView.RowValidating問題
- 25. 如何解決UnicodeWarning問題?
- 26. 如何解決javax.mail.AuthenticationFailedException問題?
- 27. 如何解決nsusredefaults問題
- 28. 如何解決javax.mail.AuthenticationFailedException問題
- 29. Memcpy_p問題,如何解決?
- 30. NSThread問題如何解決?
'影響現有客戶端應用程序'位是爲什麼Solaris無法解決32位問題。現在開始遷移到64位計劃的工作 - 你只有28年的時間才能完成工作,而且客戶非常頑固,以至於你可能需要全部工作。 – 2010-01-04 14:07:49
我只需要2038年後的日期進行計算,並且不需要Solaris內核中的這種日期。所以我會選擇mark40的建議。 – Andy 2010-01-05 06:45:57