『壹』 c語言變數在聲明時賦值問題
用strcpy(head.RIFF, "RIFF"); strcpy(head.WAVE, "WAVE");
在C語言里數組是不能直接賦值的,數組名是常量的指針,其值不能改變,這里head.RIFF = "RIFF"
的意思就是讓數組名RIFF指向「RIFF"的首地址,因此是錯誤的。
『貳』 在C語言中,創建一個指針變數,但是不賦值,是否就是空指針
對於未初始化的變數,編譯器會給它們一個默認值,這個默認值是未知的(也許是NULL,也許是其他的),任何使用未初始化的變數的行為都是有隱患的。
『叄』 c語言定義變數不賦值輸出問題
主函數中定義全局變數count=set_grade(p,n);
而函數set_grade中定義了局部變數count=0;最後返回count的值。如果沒有不及格人數,則返回值0。主函數中printf語句輸出count的值,輸出0。
所以你不用擔心主函數中count沒有賦值,count的值是函數set_grade返回的,是有值的。
『肆』 C語言中定義一個變數,不給它賦值。它會有值嗎若有是多少
沒有加static,默認為auto 型,此時,不給初值,變數的初值是隨機的。
如果加了static不給初值,變數的初值是默認的 0。
不能說不賦初值就不行,對於局部變數,不賦初值的話,其實裡面存的是一個隨機的值,誰也不知道是多少。
(4)c語言只聲明不賦值擴展閱讀:
在C語言中,如果按存儲佔用空間來分,包括:
整型變數(代碼為int),整型變數包括長整型變數(代碼為longint)以及短整型變數(代碼為shortint),字元型變數(代碼為char),浮點型變數(代碼float)等。
聲明變數時,可以不用聲明就直接賦值來決定變數類型的語言,這類語言變數的聲明通常被稱為弱類型,而如(c++等)必須先聲明,後使用,而且聲明時必須確定變數類型,這種就是嚴格的數據類型。
『伍』 c語言中與組數是不是一定要賦值
不一定,例如 staic int a[10] 就可以不用賦值,但是數組會默認裡面的元素全部為0,因為是staic類型
『陸』 C語言中的變數只定義不賦值會發生什麼情況
既然是變數,就都可能會變。你讓它作加減乘除,當然就會變了。
你是想問變數的域嗎?
函數體(包括main函數)中定義的變數的有效期一般只在函數中有效,也會在函數每次被調用時臨時分配空間作為變數。函數結束後,變數對應的空間會被釋放(雖然有些編譯器不管這些,仍然能夠通過指針訪問到原數據,但是這是不安全的)。而static類型的變數只在函數第一次被調用時初始化,之後的調用將不再會初始化該變數
關於實參與形參:
c語言傳遞參數時,基本類型變數傳遞的僅僅是值,對應主函數體中的內存是不會被調用的函數直接訪問的。(指針那裡的swap那個例子很說明問題)。比如主函數裡面定義了一個a,調用的函數參數裡面有個a,然後主函數「把a傳進」調用的函數中——這種理解是錯誤的,應該是將a的值傳遞到調用函數私有的一個變數a中(也就是有兩個a)。
還有不懂的再問吧
『柒』 C語言中,如果定義一個變數,但不對其進行賦值,那麼輸出的這個變數的值由什麼決定呢
因為字元變數在內存中存放的是其對應的ASCII值,比如說字元『a』ASCII值是97。
printf("%d",ch);
char ch='a';
輸出結果就是97了。所以對於字元變數也可以這樣理解:是單位元組的整型變數。所以當然可以對一個字元變數賦值一個1啊。
在表達式方面較其它程序語言更為簡潔,如自加、自減、逗號運算和三目運算使表達式更為簡單,但初學者往往會覺的這種表達式難讀,關鍵原因就是對運算符和運算順序理解不透不全。
(7)c語言只聲明不賦值擴展閱讀:
循環結構:
循環結構可以減少源程序重復書寫的工作量,用來描述重復執行某段演算法的問題,這是程序設計中最能發揮計算機特長的程序結構,C語言中提供四種循環,即goto循環、while循環、do while循環和for循環。
四種循環可以用來處理同一問題,一般情況下它們可以互相代替換,但一般不提倡用goto循環,因為強制改變程序的順序經常會給程序的運行帶來不可預料的錯誤。
特別要注意在循環體內應包含趨於結束的語句(即循環變數值的改變),否則就可能成了一個死循環,這是初學者的一個常見錯誤。
『捌』 C語言中,只定義了變數類型不給變數賦初值的話那麼引用起來默認的數值是多少
int a;如果你輸出 a那麼編譯器不同,答案會不同,有些編譯器會自動初始化為0,有些編譯器會輸出a對應內存裡面的值,這個值是不確定的,如果你輸出 &a,那麼這個就是系統為a這個變數分配的地址了..
『玖』 C語言中const定義變數時可以不賦值嗎
不賦值的話,系統會賦吧。
後續不能更改,否則const做什麼?
『拾』 c語言中定義變數不賦初值是多少
沒有加static,默認為auto 型,此時,不給初值,變數的初值是隨機的。
如果加了static不給初值,變數的初值是默認的 0。
其實不能說不賦初值就不行,對於局部變數,不賦初值的話,其實他裡面存的是一個隨機的值,誰也不知道他是多少,因此如果沒賦初值的情況下就使用它,程序是完全不可控的,如你的圖1,直接在while里去判斷b了,因此這個while判斷是不可控的。
【c語言】
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標准局為C語言訂定了一套完整的國際標准語法,稱為ANSI C,作為C語言最初的標准。