① int整型變數是否是4個位元組32位
是啊 就是4個位元組32位
② c語言 如何定義一個整形變數 同時限定輸入位數
假設限定位數為n(n < 10),設抄置循環讀襲入各個阿拉伯字元(含+、-,其他非阿拉伯字元舍棄),並將讀入的字元同步轉換為一個整數,循環結束後就可得到所需的整形變數的值。代碼:
inti,n,digit,sign=1,num=0;
scanf("%d",&n);//讀入限制位數
for(i=0;i<n;++i){
digit=getchar();
if(digit=' ')break;//讀數結束
if(digit='+')sign=1;
elseif(digit='-')sign=-1;
if(digit>='0'&&digit<='9')
num=10*num+digit-'0';
}
num*=sign;//這是讀入的整數。
③ c中怎樣才能確定一個整形變數的位數如a=0001,其位數為4
循環,類似這樣
#include<stdio.h>
intmain()
{
inta,n=0;
scanf("%d",&a);
while(a)
{
n++;
a=a/10;
}
printf("%d ",n);
return0;
}
另外這個不適用於0開頭的,輸版入0開頭的自動忽略(而不是看做八進權制,也不看做位數)
④ C++ 如何判斷一個變數是否為整型,而非字元等
看聲來明
如果聲明的時候用源的類型是int,變數就是int類型的。
如果聲明的時候用的類型是char,變數就是char類型的。
控制台的輸入沒有類型之說。由程序員考慮當輸入符合什麼格式的時候,能被程序認為是「合理」的輸入。對於
unsignedinta;
cin>>a;
可以簡單地假定「只要 cin 認為它是合理的輸入,就是合理的輸入」。此時只需檢查
cin.fail()
即可。如果 cin.fail() 返回 true ,就說明輸入格式不正確,是不合理的輸入。否則就是合理的輸入
⑤ 怎麼計算一個整型變數的位數用什麼函數
用 sizeof(變數類型)得到位元組數
sizeof(long int)
sizeof(int)
sizeof(short)
sizeof(unsigned int)
位元組數 * 8 得到總位數
有符號數,符號要佔去1 位,其它是數位。
--------
sizeof 不是函數,而是運算符。
⑥ 整形變數
unsigned long 就是無符號長整型, 為了什麼就只有根據具體情況來看了。 無符號回跟有符號長度答是一樣的, 只是第一位不再作為符號位,所以數值部分會多一位
按符號算就是有符號無符號, 按長度算有 char , short , long , long long。 int在32位編譯器里等同於long
short是16位,int一般是32位
不是那書瞎說就是你看錯了。 long是32位, 或者說4位元組。 int我上面說過了
位轉換位元組就是除以8的關系, 有些地方會不這么說, 因為以前有些cpu不是8位1位元組的, 但是現在那種怪東西都不存在了, 8位1位元組是事實標准了
⑦ 用C++寫一個函數,要求能分辨出輸入的一個整型變數是幾位數。
#include <iostream.h>
void main(){
int n,count=1;
cout<<"input a (int) data: ";
cin>>n;
while (n/10)
{
count++;
n/=10;
}
cout<<"data n: "<<count<<endl;
}
⑧ c語言中怎麼統計一個整形變數輸出長度
#include<stdio.h>
#include<string.h>
intmain()
{
inti,l;
chars[BUFSIZ];
scanf("%d",&i);
sprintf(s,"%d",i);
l=strlen(s);//這就是所求的輸出長度。
printf("i=%d,len=%d ",i,l);
return0;
}