1樓:瓊頭浪子
這是因為空間大小不匹配啊。在c中,int型是2個位元組(,這個佔幾個位元組問題,隨具體的編譯器不同而有所差異),而char型才1個位元組,把大的賦給小的,會出現差錯;而小的賦給大的,就不會發生差錯;
就好比說,有兩個容器,一大一小,大的裝的水多,小的裝的水少;
你把小的裡的水倒給大的,大的完全裝得下;
而你把大的倒給小的,顯然是裝不下要溢位;同理。
原本你定義的時候,兩個變數都是double型的,所以在執行(f-32)*5/9這一步時,系統會隱含的把該表示式裡的數全都轉換成double型,最後進行計算,而把double賦給double,這是沒問題的;
此時你把double改成char,由於int佔兩個位元組,比char大,這時在計算(f-32)*5/9這一步時,系統會把資料都變成int型之後才進行計算,顯然最後表示式的值是int型的,這時你再把int型的資料賦給char型的(以大賦小)按照上面所說的,這時編譯就會出錯啦。
2樓:消散流川命
char是字元型的,如果你輸入,那麼就是一個字串,當然是不行的~~而且字串也不能那去加減乘除啊~~
double是雙精度浮點數,要用到比較精確的數字時,就用double;
char是字元型啊,比如char c='a';這樣~~~
3樓:匿名使用者
double是實型,char是字元型,c的基本資料型別啊。
c語言程式設計問題 5
4樓:有柴米呀呀呀呀
提問怎麼改。
把replace函式提到main函式外面。
提到main函式的前面。
或者在main前面寫一個replace函式宣告宣告報告裡面呢,還寫了呼叫時的型別是衝突的。
c語言開發中遇到的問題
5樓:
諮詢記錄 · 於2022-12-16
1、書寫識別符號時,忽略了大小寫字母的區別。main()編譯程式把a和a認為是兩個不同的變數名,而顯示出錯資訊。c認為大寫字母和小寫字母是兩個不同的字元。
習慣上,符號常量名用大寫,變數名用小寫表示,以增加可讀性。2、忽略了變數的型別,進行了不合法的運算。**如下:
main()%是求餘運算,得到a/b的整餘數。整型變數a和b可以進行求餘運算,而實型變數則不允許進行「求餘」運算。3、將字元常量與字串常量混淆。
char c;c=」a」;在這裡就混淆了字元常量與字串常量,字元常量是由一對單引號括起來的單個字元,字串常量是一對雙引號括起來的字元序列。c規定以「\」作字串結束標誌,它是由系統自動加上的,所以字串「a」實際上包含兩個字元:『a』和『』,而把它賦給一個字元變數是不行的。
4、忽略了「=」與「==的區別。在許多高階語言中,用「=」符號作為關係運算子「等於」。如在basic程式中可以寫if (a=3) then
c語言程式設計問題
執行程式的時候出現c++錯誤怎麼辦
6樓:匿名使用者
執行程式的時候出現c++錯誤這樣的問題一般是因為檔案出錯或者vc執行庫沒有安裝導致的,解決方法。
二、以管理員身份執行命令提示符,開啟開始選單,搜尋cmd。在命令提示符上單擊右鍵,選擇「以管理員身份執行」;在命令提示符中輸入以下命令:for %i in (%windir%\system32\*.
dll) do /s %i,按下回車執行命令 即可完成修復。
7樓:匿名使用者
microsoft visual c++ 2005 redistributable package (x86),安裝在未安裝 visual c++ 2005 的計算機上執行使用 visual c++ 開發的應用程式所需的 visual c++ 庫的執行時元件,此軟體包安裝 c runtime (crt)、standard c++、atl、mfc、openmp 和 msdia 庫的執行時元件。對於支援並行部署模式的庫(crt、scl、atl、mfc 和 openmp),這些執行時元件安裝在支援並行程式集的 windows 作業系統版本的本機程式集快取中,這一快取也稱為 winsxs 資料夾。支援的作業系統:
windows 2000 service pack 3; windows 98; windows 98 second edition; windows me; windows server 2003; windows xp service pack 2。所需軟體:windows installer 3.
0、windows installer 或更高版本。
二、看到問的人不少,但我的問題和這些有些不同,出現這個對話方塊按確定後,當時在使用的幾個網頁串列埠就統統沒了,請問這是怎麼回事呢?謝謝。以下是電腦跳出來的這段話。
8樓:匿名使用者
也許是你編寫這程式的一些細節給忘寫了,比如你動態分配了記憶體,但你忘記去釋放對應的記憶體,或者是記憶體溢位。
c++:請問如何解決這個問題?
C語言程式設計問題,c語言程式設計問題?
小黑哎啊 include include 數學函式標頭檔案 include void fun1 函式宣告 void fun2 int main while 1 int x for int i 0 i 20 i printf printf n1,求整數n的立方 n printf 2,判斷是否能構成三角...
c語言程式設計問題,c語言程式設計問題?
聽不清啊 include int main int i,n double sum 0 scanf d n for i 1 i n i sum i i 1.0 i 1 printf f n sum return 0 威爾史密斯 include void main c語言程式設計問題 手機使用者 解題思...
c語言程式設計問題,C語言程式設計問題。
你的scanf中間錯了,應改為scanf d d m,n 另外d a c b 將d改為float型別比較好。c語言出現了一個問題,導致程式停止正常工作,請關閉程式 1 野指標,你使用的指標指向未知區域 2 scanf函式輸入整形 字元 的時候缺少了 3 緩衝區溢位,也就是說你使用陣列時不經意間越界了...