1. 怎麼看keil編譯器定義的數據類型佔多少位
辦法1:直接在代碼中,使用sizeof運算符,例如a=sizeof(int),那麼a的值就是int的長度。
辦法2:編譯成功後,打開.map文件(或.m51),查找SYMBOL
例如:
00000036H SYMBOL DATA BYTE temp
00000037H SYMBOL DATA BYTE temp2
temp,temp2是變數名,00036H是變數起始地址,DATA表示在data區,BYTE表示變數是BYTE型的,也就是一個位元組。你可以通過不同變數的地址差來計算長度。
2. c語言中,int型數據,能表示的最大十進制數是多少
和編譯器有關,16位機器准確說是16位編譯器是:-32768~32767
32位編譯器:-2147483648~2147483647
64位編譯器:見下圖。

3. vc判斷是32位編譯還是64位編譯判斷是debug編譯還是release編譯
1.判斷是debug編譯還是release編譯。
如果_DEBUG定義了表示是debug編譯,否則是release編譯粗螞。
2.判斷是32位編譯還是64位編譯。
在 Win32 配置下,_WIN32 有定義,_WIN64 沒有定義。在 x64 配置下,兩者都有定義。即在 VC 下,_WIN32 一定岩纖埋有定義。
因此,WIN32/_WIN32 可以用來判斷是否 Windows 系統(對於跨平台程序),而 _WIN64 用來判斷編譯環境是 x86 還是 x64。附一個表:
常量\定義 預定義選項 Windows.h VC編譯器
WIN32 Win32 √(minwindef.h) ×
_WIN32 × × √
_WIN64 × × x64
最後附上根據相應編譯情況,進行有條件的鏈接相應靜態庫的示例代碼,其實就是一些豎碼宏定義語句的使用:
[cpp] view plain在CODE上查看代碼片派生到我的代碼片
#include "json/json.h"
#ifdef _DEBUG
#ifndef _WIN64
#pragma comment(lib,"json/json_mtd.lib")
#else
#pragma comment(lib,"json/json_mtd_x64.lib")
#endif
#else
#ifndef _WIN64
#pragma comment(lib,"json/json_mt.lib")
#else
#pragma comment(lib,"json/json_mt_x64.lib")
#endif
#endif
using namespace Json;
4. C語言(收藏系列)——常用數據類型所佔用的位元組數
在C語言中,數據類型的位元組數量與機器字長及編譯器緊密相關。要了解特定數據類型在編譯器內部的位元組數,可通過以下方式獲取:
首先,查看編譯器選項以確定是16位、32位還是64位編譯器。當前,主流編譯器多為32位和64位版本。
其次,利用sizeof()函數獲取數據類型的位元組數。sizeof是C語言中的保留關鍵字,也是一種運算符。
例如,sizeof(int)會返回編譯器為int數據類型分配的位元組數。若sizeof(int)輸出為4,表示在當前編譯器環境中,int數據類型佔用4個位元組。
值得注意的是,對於32位和64位編譯器,int數據類型的位元組數在32位編譯器中為4位元組,在64位編譯器中也為8位元組。此時,結合查看編譯器選項的方法一,可明確確認。
本文介紹了C語言常用數據類型所佔用位元組數的基本方法。希望此內容能為各位提供參考。期待您的點贊與關注,共同探索C/C++語言的奧秘。
5. c8051怎麼看數據范圍是多少
在keilC51或者iar for c8051編譯器下:
一、int 占兩個位元組 范圍:-32768~+32767
二、long佔四個位元組 范圍:-2147483648~+2147483647
三、float佔四個位元組 范圍:3.40E+38 ~ +3.40E+38
四、double佔8個位元組 范圍:-1.79E+308 ~ +1.79E+308
51單片機是對所有兼容Intel 8031指令系統的單片機的統稱。該系列單片機的始祖是Intel的8004單片機,後來隨著Flash rom技術的發展,8004單片機取得了長足的進展,成為應用最廣泛的8位單片機之一。

(5)怎麼看是多少位編譯器擴展閱讀:
51單片機功能特性
1、可以模擬63K程序空間,接近64K 的16位地址空間;
2、可以模擬64Kxdata 空間,全部64K 的16位地址空間;
3、可以真實模擬全部32 條IO腳;
4、完全兼容keilC51 UV2 調試環境,可以通過UV2 環境進行單步,斷點, 全速等操作;
5、可以使用C51語言或者ASM匯編語言進行調試 ;
6、可以非常方便地進行所有變數觀察,包括滑鼠取值觀察,即滑鼠放在某 變數上就會立即顯示出它此的值;
7、可選 使用用戶晶振,支持0-40MHZ晶振頻率;
8、片上帶有768位元組的xdata,您可以在模擬時選 使用他們,進行xdata 的模擬;
9、可以模擬雙DPTR 指針;
10、可以模擬去除ALE 信號輸出. ;
11、自適應300-38400bps 的所有波特率通訊;
12、體積非常細小,非常方便插入到用戶板中.插入時緊貼用戶板,沒有連接電纜,這樣可以有效地減少運行中的干擾,避免模擬時出現莫名其妙的故障;
13、模擬插針採用優質鍍金插針,可以有效地防止日久生銹,選擇優質園腳IC插座,保護模擬插針,同時不會損壞目標板上的插座. ;
14、模擬時監控和用戶代碼分離,不可能產生不能模擬的軟故障;
15、RS-232介面不計成本採用MAX202集成電路,串列通訊穩定可靠,絕非一般三極體的簡易電路可比。
6. MATLAB mex 找不到編譯器怎麼辦
①選y後,MATLAB會列出當前機器上已經安裝的、且與當前MATLAB版本兼容的所有C編譯器,一般而言,MATLAB都會自帶一個LCC編譯器,然而LCC目渣消前僅支持32位的MATLAB,所以你的機器上沒有。
②選n後,MATLAB會列出所有與當前MATLAB版本兼容的C編譯器類型(不管你是否已經安裝,用於幫助用戶選擇合適的C編譯器),你機器上已經安裝的2個編譯器,VC6.0:MATLAB從R2010b之後不再支持,所以選項里看不到;而SDK7.1選n時可以看到([11]),但選y時沒有跳出,是因為MATLAB沒有正確定位SDK。
③解決方法:
方法一:如果以預設選項安裝了SDK7.1(不改變默認安裝路徑),可以嘗試輸入n後,選肢櫻擇 [14] (注意:是14,不是11!),強制定位該編譯器(網上有人用這種方法成功了:http://mlinking.blog.163.com/blog/static/185801922201331464626365/)
方法二:重新安裝MATLAB,安裝時選擇32位進行安裝,則自帶LCC編譯器。
方法三:選擇適配的VS版本,下載安裝後,重新配置MEX命令。