歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

C語言判斷Ubuntu是32bit還是64bit

前言

今天在運維工作時候,突然忘記查看Ubuntu系統是32bit還是64bit的命令,於是想到了用c語言寫個小程序進行判斷,感覺挺有意思的,記錄一下

c語言方法

思路

  • 在32bit的機器裡,內存地址用32bit標識
  • 在64bit的機器裡,內存地址用64bit標識
  • 因此,我們可以打印指針的字節數*8不就是cpu的位數了

代碼

#include <stdio.h>
#include <stdlib.h>

int main()
{
 char *p;

 printf("cpu的位數: %d\n", 8 * sizeof(p));

 return 0;
}

執行結果

Ubuntu的命令查看方法

uname -a

結果

說明

i386、i686代表是32bit機器

x86_64代表64bit機器

疑問

一年半之前考研的時候復習過操作系統,現在基本上忘光了,不知道cpu的位數和指針的大小是否可以這麼進行關聯,如果我理解錯誤,多謝各位朋友留言指出哈,有交流才有進步!

Copyright © Linux教程網 All Rights Reserved