⑴ 如何輸出一個整型變數
當你輸入「12 s「時, b的值就是一個未初始化的值,具體值要看當前棧上回是什麼數據,總之就是一個答不確定的值。最重要的一點,b的值並沒有因為scanf("%d %d, &a, &b);這條語句而發生變化。
你可以在定義b的地方給b一個初始值,比如5:
int a, b=5;
然後運行程序,輸入「12 s「,你會發現輸出b的值,仍然為5.
⑵ C語言中如何輸出長整型數值
在C/C++中,64為整型一直是一種沒有確定規范的數據類型。現今主流的編譯器中,對64為整型的支持也是標准不一,形態各異。一般來說,64位整型的定義方式有long long和__int64兩種(VC還支持_int64),而輸出到標准輸出方式有printf(「%lld」,a),printf(「%I64d」,a),和cout << a三種方式。
本文討論的是五種常用的C/C++編譯器對64位整型的支持,這五種編譯器分別是gcc(mingw32),g++(mingw32),gcc(linux i386),g++(linux i386),Microsoft Visual C++ 6.0。可惜的是,沒有一種定義和輸出方式組合,同時兼容這五種編譯器。為徹底弄清不同編譯器對64位整型,我寫了程序對它們進行了評測,結果如下表。
上表中,正確指編譯通過,運行完全正確;錯誤指編譯雖然通過,但運行結果有誤;無法編譯指編譯器根本不能編譯完成。觀察上表,我們可以發現以下幾點:
long long定義方式可以用於gcc/g++,不受平台限制,但不能用於VC6.0。
__int64是Win32平台編譯器64位長整型的定義方式,不能用於Linux。
「%lld」用於Linux i386平台編譯器,」%I64d」用於Win32平台編譯器。
cout只能用於C++編譯,在VC6.0中,cout不支持64位長整型。
表中最後一行輸出方式中的printint64()是我自己寫的一個函數,可以看出,它的兼容性要好於其他所有的輸出方式,它是一段這樣的代碼:
CPP
void printint64(long long a)
{
if (a<=100000000)
printf("%d ",a);
else
{
printf("%d",a/100000000);
printf("d ",a0000000);
}
}
這種寫法的本質是把較大的64位整型拆分為兩個32位整型,然後依次輸出,低位的部分要補0。看似很笨的寫法,效果如何?我把它和cout輸出方式做了比較,因為它和cout都是C++支持跨平台的。首先printint64()和cout(不清空緩沖區)的運行結果是完全相同的,不會出現錯誤。我的試驗是分別用兩者輸出1000000個隨機數,實際結果是,printint64()在1.5s內跑完了程序,而cout需要2s。cout要稍慢一些,所以在輸出大量數據時,要盡量避免使用。
⑶ 如何輸出整形
CString str;
//整型
str.Format("%d",N);
m_num1.SetWindowText(str);
//浮點
str.Format("%f",M);
m_num1.SetWindowText(str);
ps:
yangruihan123你太可笑了,靠找人家的錯來拿分,但是你說的並不對,不要冒充大尾專巴狼了,不信你試試用屬lf和f有區別嗎。
%f 既可以用了格式化float類型,也可以格式化double類型,但一般只保留6位小數,如果要顯示多位小數,可以這樣:
str.Format("%.16f",M);//保留16位小數
str.Format("%.10f",M);//保留10位小數
⑷ 怎樣把輸入的字元型數字轉換成整形輸出
#include<stdio.h>
#include<stdlib.h>
void main()
{ int a,b; char str[256],*p;
scanf("%s",str);
b=0; p=str; while ( *p ) { if ( (*p)>='0' && (*p)<='9' ) { b=1; break; } p++; }
a=0; if ( b ) a=atoi(p);
printf("%d
",a);
}
⑸ c語言中怎樣正確輸出雙長整形變數
用%lld,如下
#include<stdio.h>
void main(){
unsigned long long i;
i=184467440737065520;
printf("%d", sizeof(i));
printf("\n%lld", i);
}
⑹ JAVA 中怎麼樣把整型數據輸出到文件
轉換成字元串 然後寫道文件
-----------------------
private static void write(String content, String fileName)
throws IOException
{
String path2 = basePath2 + "\\" + fileName + ".ini";
File file2 = new File(path2);
FileOutputStream out = new FileOutputStream(file2);
OutputStreamWriter osw = new OutputStreamWriter(out, "utf-8");
BufferedWriter bwr = new BufferedWriter(osw);
bwr.write(content);
bwr.flush();
bwr.close();
}
=========================
filewrite有的機器上會有亂碼~
⑺ c++中如何輸出長整形急急急!!!
c++中cout默認是輸出int型的,長整型超過了cout的輸出范圍,所以長整型數要用字元數組存,把每個數字看成字元,再把每個數字轉換成數字(各個字元的ASII碼-48),再逐個輸出即可
⑻ C語言PRINTF怎麼同時輸出整形變數和符號
和輸出一個變數抄類似,只襲要在前後都加上對應內容即可,如printf("%d,%d\n",a,b);
printf("輸出格式類型",變數);
例如
int a = 10;
int b = 20;
printf("%d,%d\n",a,b);