一些可能性包括:
Sys.info()["machine"] == "x86-64"
.Platform$r_arch == "x64"
version$arch == "x86_64"
有没有理由更喜欢一种方法而不是另一种方法?
相关:detecting operating system in R (e.g. for adaptive .Rprofile files)
答案 0 :(得分:12)
实际上,这些方法都不是规范的,我认为这意味着“Brian Ripley会说什么”。试试这个:
?.Machine
sizeof.pointer ........ C SEXP类型中的字节数。在32位版本上是4,在64位版本的R上是8。
64bit <- .Machine$sizeof.pointer == 8
64bit
#[1] TRUE
至于你的提名,我的机器上只有其中一个返回TRUE:
> Sys.info()["machine"] == "x86-64"
machine
FALSE
> .Platform$r_arch == "x64"
[1] FALSE
> version$arch == "x86_64"
[1] TRUE