2012-04-03 41 views
22

Làm cách nào để chuyển đổi chuỗi int thành chuỗi? Ví dụ: 1 đến "1".OCaml - Làm cách nào để chuyển đổi int thành chuỗi?

+12

Arlen. Tại sao bạn không chỉ trả lời "string_of_int"? Câu hỏi cơ bản của Ocaml a) "không google" b) thường có các câu trả lời không chuẩn, c) một sự lãng phí thời gian rất lớn. Và tất cả những điều đó chủ yếu là vì những người như bạn, những người thay vì chỉ trả lời, trả lời với những câu hỏi khác không liên quan đến chủ đề. –

+3

@Liia: Là người không phải là người bản địa, tôi đã phải google "nghiên cứu khoa học". Nó đã cho tôi "Nghiên cứu cursory cho thấy rằng Rand Paul có thể khó khăn để ghim thuốc, phá thai, điều trị của người đồng tính và các vấn đề xã hội khác - xa hơn so với mong đợi của một người tự do chính thống và mạnh mẽ, mặc dù đó có thể là sản phẩm của tìm kiếm của tôi nhiều hơn các tuyên bố của anh ấy. ”" (http://www.wordnik.com/words/Cursory) ... và vì vậy, nhận xét của bạn đã giúp tôi cải thiện tiếng Anh của tôi :-) không phải những gì tôi đã tìm kiếm. Dmitry C: thx. cũng đã giúp tôi. – tverrbjelke

+1

@tverrbjelke: điều đó thật bất ngờ! :) – Ashe

Trả lời

48

Sử dụng chức năng string_of_int (xem tài liệu cho Pervasives, mô-đun có chứa các chức năng tự động được cung cấp trong không gian tên cấp cao nhất cho các chương trình al OCaml).

11

Một giải pháp khác là sử dụng printf module, cho phép bạn chọn định dạng in ấn:

Printf.sprintf "%d" 42 

mang đến cho bạn "42".

Nhưng bạn có thể thích sử dụng biểu diễn bát phân, thập lục phân, nhị phân, v.v. Ví dụ,

Printf.sprintf "%x" 42 

mang đến cho bạn "2a" là đại diện thập lục phân của 42.

Printf.sprintf "0x%x" 42 

sẽ cung cấp cho bạn "0x2a".

Xem Printf documentation để biết thêm chi tiết.

Các vấn đề liên quan