在64位機器使用CMake編譯32位程式

2021-10-16 09:47:37 字數 628 閱讀 1205

在幫(去看電影的)wsf 同學做 ddl 作業的時候,遇到以下題目:

設有語句如下:

char *c1 = ;

char c2[6] = ;

32 位系統中下面哪一種說法是正確的?

a. sizeof(c1)加4 等於sizeof(c2)

b. sizeof(c1)加6 等於sizeof(c2)

c. sizeof(c1)大於sizeof(c2)

d. sizeof(c1)等於sizeof(c2)

本著負責的目的,決定手動實驗。

toolchains:

在 cmakelists.txt 中進行以下設定:

set(cmake_c_flags "-m32")

set(cmake_cxx_flags "-m32")

備註:

選 b。

printf

("%u\n"

,sizeof

(c1));

// 12

printf

("%u\n"

,sizeof

(c2));

// 18

64位機器使用PLSQL(無需安裝32位客戶端)

64位win7,本機安裝了oracle11g 64位服務端,不安裝32位客戶端的情況下使用plsql 2.解壓到 任意路徑 3.在環境變數的path裡面新增壓縮包的路徑,放到最前面。4.新增環境變數tns admin,內容是tnsnames.ora檔案的路徑 5.在plsql的首選項裡,oracle...

64位機器使用嵌入式彙編自己實現mmap系統呼叫

環境 centos 6.5 64位 gcc 4.4.7 20120313 核心 2.6.32 431.el6.x86 64 對於mmap的系統呼叫引數傳遞,引數傳遞對應的暫存器如下 void mmap void addr,size t length,int prot,int flags,int fd...

在64位linux下編譯32位程式

一般情況下我們最好是在乙個平台上編譯本平台的二進位制程式,比如在32位平台上編譯32位程式而在64位平台上編譯64位程式。現在64位的系統 這裡主要指x86 64系統,包括amd64和intel的em64t 已經開始廣泛的使用起來了,甚至於你現在要是想買32位的處理器根本就沒有。64位的系統在效能和...