c語言引號
A. c語言中「」和''有什麼區別加上和不加上有什麼區別
雙引號括起的叫 字元串常量,代表的是一個指向無名char型數組 的指針,它含的內容是一個字元串,並帶有一個字元串結束符。
單引號括起的叫 字元常量,相當一個一位元組長的整型數值。字元是ASCII字元集中的字元以及「轉義字元」。
字元串常量例子: 「abc" (占內存4位元組,字元串長度3);「a" (占內存2位元組,字元串長度1); "\n" (占內存2位元組,字元串長度1, 換行鍵)
字元常量例子:'a' (占內存1位元組,等於整型數值97); '\n' ( 占內存1位元組,轉義字元,換行鍵,等於整型數值10)。
不加上,則意義不同,例如, abc 可能是 變數名或函數名, \n 可能是錯誤的標識符。
B. C語言的單引號怎麼輸入
C語言的單引號怎麼輸入
輸入的時候 直接輸單引號就可以了。
就是回車邊上那個鍵。
shift加它是雙引號 不加shift就是單引號了。
在程式中使用符號常量的時候是 '''
兩個單引號中間 一個加單引號。
c語言中的單引號怎麼輸入的啊?
#include<stdio.h>
void main()
{
char mychar;
printf("請輸入一個字元:");
scanf("%c",&mychar);
printf("%c",mychar);
printf("
" );
}
C語言的單引號是什麼意思
單引號一個數,表示一個字元;
單引號內是數值,那結果是ASCII碼中對應的字元;
雙引號一個字元或幾個字元,表示一個字串。
我想知道單引號在C語言的具體作用
你這真是初學者啊,不過說實話要想把這些都講明白還真不是一下子就能全讓你明白的,它涉及到很多章節的內容,不過從主要的一點來看它們都離不開一個——函式
那我就先說說這個函式,即然你是初學者,那我就從初學的角度來講
函式這東西估計你數學裡面也學過,初中的定義是:在一個變化的過程中存在2個變數x,y,當x每取一個值,y都有唯一一個值與之對應,那麼y就是x的函式。
高中時候定義換了樣子,從集合的角度講的:集合A中的每一個元素X按某種對應關系f 運算後,其值都可以在集合Y中找到,並且唯對應著唯一一個值。
其實說白了函式就是一種對應關系,比如f(x)=3x+1 那我把1送給這個函式,那它就會給我4;
我把2給它,它就給我7 。。。。 就是皮穗悶這樣的對應關系。
那我們C語言中的函式呢,類似於數學中的函式,也是,你給它一個東西,它就給你另一樣東西,至於它給你的是什麼,那就看函式的具體功能是什麼了。 就如上邊舉的例子3x+1 這就是它的具體功能,計算3x+1的值 。 擴充套件一下,C語言里的函式不光是算數,還可以處理如多問題,比如輸出字串。當然還有更多族瞎。
字串這個東西你應該懂的,我們的漢字,英文字母,這些一個個的字,單片語合在一起便成了一句話,反應在計算機中,就成了字串。
===================================================================
上面講了點基本思想,總結一下就是函式的「對應」思想。
那我說了C語言中主要由函式組成,在這個小程式中呢有2個。一個是main一個是printf
其實你找什麼是函式很簡單,看括弧() 每一個函式的組成都有一個「函式名」,函式名後邊緊跟一對小括弧()。 你看main後邊,還有printf後邊 是不是都能找到一對括弧()? 呵呵 。別急我沒說完呢。 這括弧里邊還有內容! 那就是「引數」
引數這東西可有可沒有,你看main()這里邊就沒有引數吧, 再看printf()這里一大堆燃彎的東西啊。這一大堆的東西是啥?——引數。
還沒完,除了引數外我們C語言的函式還少一個東西,那就是「返回值」 ,在哪? 看main()前面那個東西 int 它就是返回值的型別, 注意是返回值的「型別」 , 資料型別啊,你可能不知道是什麼,沒關系,先不管它,你只要知道int代表一個整數就行!
==============================================================
現在C語言函式的幾個東西我都說齊了吧: 返回值、函式名、引數,當然別忘了小括弧。 現在拿f(x)=3x+1 跟這幾個詞對對號吧。 先看函式名:f , 沒錯一個f就是函式名,你可以改成別的啊比如 g(x) = 3x+1。 函式名後邊緊跟的一對小括弧() ,看數學里的函式也有吧! 再來括弧里會有引數的,這裡面是啥?是x啊,這不難看到吧。那返回值是啥?? 沒看出來,但你知道一件事,你把1給x,那f(x)就給你4 ,你把2給它,f(x)就給你7 。 這4 和7 就是返回值 。 現在能分清了吧!
===============================================================
回到C語言裡面我們繼續說,那就先來看main吧
int main()
{
return 0;
}
看看這一段(我把printf()先去掉了),這個main函式有自己的函式名main 有了小括弧() ,它沒有引數,那就不需要引數唄。 有一個返回值, 在哪,在哪?? return 0;是啥? 嗯 它就是返回值,return 英文單詞「返回」的意思,return 0的意思就是返回0。 0是一個整數啊,剛才我叫你記住int 代表整數吧? 正好啊! main前的int說明了main會有一個整數的返回值 , 然後在main中就有了return 0,它告訴我們返回0這個整數。當然你可以修改程式return 1 return 2 。。。都沒有毛病,但為啥偏偏寫0呢? 這個問題我先不說,留到你學到函式這一章的時候自己就明白了,而且現在知不知道也不影響你的學習!至於你把return 0; 刪除了當然不影響,整個程式的結果,因為它是只給main函式返回一個0值,這個值你在程式中並沒有使用啊,所以不影響結果。
那麼main到底是什麼? 英文單詞「主要的」意思,故名思議它就是「主函式」,C語言有規定,規定一個C語言程式必須從main函式開始,在main里結束。 因此你寫的每一個C語言程式都要有我上邊提取出來的這個模式,必須這么寫才行! 你得讓它有始有終啊!
================================================================
再看這大塊printf("Hello World!
");
我上邊說了函式的作用吧,你給他一個東西,它就給你一個東西在這里
printf()裡面你給了它一個字串"Hello World!
",注意C語言里字串要用雙引號包起來,所以這裡面的雙引號不能丟。你把"Hello World!
"給了printf(), 那按我們的理論printf()會實現一種功能,它的功能是啥? 執行程式! 看到了吧,它在螢幕上給你「輸出」了一句話——Hello World! 然後游標另起一行。這便是它的功能。就像f(x)=3x+1這個函式的功能是給你計算「一個數的3倍再加1的結果是多少」一樣。
那,你可能要問了,那f(x)=3x+1給我們的4和7反應在printf裡面是什麼呢? 你是問返回值吧,其實printf有返回值,只不過這個函式的返回值我們不需要,沒有用,我們幹嘛用它呢? 你想看它的返回值很簡單,呆會我再跟你說怎麼看這個返回值 。
哦對了,忘了一個東西
是吧? 它是一個轉義字元, 說白了就是一個字元,
是一個整體,別把和n拆開看啊,它們是一家的,這個轉義字元的作用就是「回車」就是另起一行,所以你看到游標與HELLO WORLD不在同一行啊。
=================================================================
上邊終於把2個函式說完了,接下來看#include "stdio.h"
在此之前我們說一下函式的種類,C語言的函式有2種,一種是系統提供的「庫函式」,另一種就是我們程式設計師自己編寫的「自定義函式」。
~~~又來了,什麼庫函式啊自定義函式啊,不懂啊。
別急,先看庫函式吧,C語言這么大個語言,在國際上早就有組織給它制定了標准了,由此也產生了C標准函式庫這樣的東西,這些標準的函式啊就是他們「專家」級別的人物為我們程式設計師定製的實用的,經常要使用到的函式(在此我不得不再提一下前面說到的函式可以實現一種功能,其實說白了函式就為我們提供了一種功能function這個單詞的漢語意思即有「函式」又有「功能」的意思,所以你可以把函式和功能在C語言里看成一個東西,比較方便理解啦~)他們把函式的實現過程(類似於3x+1這樣的東西)寫好了,然後呢統一放在一個容器里。等我們程式設計師要用的時候呢,直接去找那個庫,對,那庫裡面有人家為我們准備好的函式啊,我們直接用唄。那至少你得先告訴人家(人家指的是編譯器,先不要管編譯器是啥)那庫是啥吧,要不人家找不到地方啊!
所以,就有了#include "stdio.h" 這個東西,你看你程式裡面的printf()函式你用到了吧, 這個函式不是你自己寫的,而且那些專家們為我們寫好的函式,我們拿來直接用了,我們即然拿來了,就得告訴人家printf我們從哪裡拿的啊。要不他怎麼去找? 所以必須在前面#include "stdio.h" , #include這是整體,它表示程式中用到的函式可能就在這個stdio.h這個檔案裡面有,到時候人家去這裡面找。 stdio.h這是個檔名,你可以找得到的! 嗯 差不多這里解釋清了,那我再說說編譯器吧,大概說一下,你寫好的程式要經過編譯器的編譯才能變成一個EXE可執行檔案, 編譯的過程類似於「翻譯」 就像我們把英文播譯成漢語一樣, 編譯器呢就把我們寫好的程式碼 翻譯成10100010101010 ..,.....這樣的二進位製程式碼,進而形成那個exe可執行檔案。那它翻譯的時候遇見了你用的printf函式就得去找函式原型啊, 得看看你那3X+1在printf裡面它咋寫的啊,這才能翻譯啊! 對吧。所以你得告訴編譯器printf在stdio.h這檔案里,你去那找它吧,肯定能找到的,找不到你回來殺了! 呵呵
================================================================
#include <stdio.h>和#include"stdio.h"的區別就是專家與程式設計師的區別
人家專家寫好的庫函式啊,在你呼叫的時候就用<>這樣的括起來
而我們程式設計師自己寫的自定義函式呢,你就得用"" 這東西括起來
而人專家寫的庫函式可以用"",就是說專家的用2種都可以<>"" 都沒毛病
但你自己寫的用<> 不好使。。 人專家不讓你用 ,呵呵 好像有點等級歧視。。。
它的原理我也不多說,等你學到編譯預處理那章的時候自己學習,我在此僅幫樓主理解。
=================================================================
自定義函式我也簡單說幾句吧,說白了就是你自己寫的函式,你可能遇到專家沒有寫的函式但你確需要,這時你就得自己寫這個函式,因此得名「自定義 函式」 ,其實沒啥神奇的,等你學厲害的時候,咱可以自己寫一個printf函式,起個名叫myprintf() ,也能往螢幕上輸出東西,呵呵 咱不用你專家給寫的。到時候你就可以
myprintf("hello,world
"); 這多牛B啊!
=================================================================
終於快說完了,最後一塊printf("Hello World!
")和printf("sum=%d
",sum)的區別。
在這一塊里呢,我也會把上文說到的printf的返回值這個問題解決。
前者就是輸出字串,問題不大,關鍵是printf("sum=%d
",sum) 這個可愁人
首先就是那個%d 很外星。。。 長這么磕磣。。。 你要不管它,你看它還是被""所包起來的吧,那不同的地方可就剩下,sum這2東西了, 你把它倆去掉一看,嘿,和前面的一樣啊,沒錯,這還是printf的本質。
那這%d到底是啥呢,它和,sum又有什麼關系呢?
原來,程式在執行的時候啊,它見到printf裡面的%d 它就先暫停,本來它把sum=已經輸出到螢幕上了,正常思維該輸出%d了啊, 但事實並不是如此,程式這時會停一下,然後它跑到雙引號外邊去找「逗號」 找到了逗號以後呢,它把逗號後面的那個值拿出來,替換那個%d,把它輸出到螢幕上,然後繼續向下輸出。
比如你sum的值是5 , 好了, printf在輸出的時候遇到了%d,它就停了,去逗號後邊找,找到了sum,因為它的值是5, 好,就把5這個值替換%d, 然後輸出到螢幕上。
因此輸出sum=5 然後
使游標換行。
重頭戲來了,你想看printf的返回值吧? 呵呵,可以啊,有了%d ,這個還難辦到嗎?
我可以先告訴你printf的返回值型別和main一樣,是啥? 是int 一個整數
這個整數代表著你「所輸出的字串中字元的個數」。哼哼
想知道printf返回值是啥? 我說到這你都不用看了,自己都能算出來
printf("Hello World!
") 這裡面的字串中的字元共有13個,那返回值是多?
13唄!不信嗎? 那驗證一下
#include<stdio.h>
int main(void)
{
printf("%d
",printf("Hello World!
"));
return 0;
}
你執行看看結果是多少?
=====================================================
上面那程式不理解嗎? 不難理解啊, 我說的printf遇到%d暫停,不輸出,而是去逗號後邊找,找到printf("Hello World!
"), 那麼它是一個函式呼叫啊,它有一個返回值啊,它把這個返回值替換了那個%d,輸出到螢幕上,所以你得到了printf的返回值。
如果我對這個程式不理解那改一下
#include<stdio.h>
int main(void)
{
int sum;
sum = printf("Hello World!
");
printf("%d
",sum);
return 0;
}
sum接收printf的返回值 ,你看呀, sum = printf("Hello World!
"); 像不像
y = 3x+1 ?? 這簡直是一樣的!
看看。結束了,差不多該說的都說了,呵呵, 這回對C 語言有了新的認識吧
其實,整個C語言程式就是函式組成的,所以我在此就先對函式進行說明
等你學到函式那一章的時候,估計也不會很費勁了
但記住,函式並不是C語言的靈魂之處,它的靈魂是指標!
C語言的字元在輸入的時候為什麼不用單引號括起來
如果你輸入了單引號,編譯器也會把單引號當成一個輸入字元,編譯器會報錯的。
單引號怎麼輸入
單引號 '
雙引號 "
換行
需要用轉移字元
c語言單帶單引號的數字
Ƌ' 是字元常量 ASIIC碼值為48+5=53
Ə' 是字元常量 ASIIC碼值為48+9=57
ཆ' 錯誤, 字元常量為單引號括起來的單字元
python 里怎麼輸入單引號
當我用單引號來表示一個字串時,如果要表示 Let's go 這個字串,必須這樣:
s4 = 'Let's go',
字串中有一個',而字串又是用'來表示,所以 這個時候就要使用轉義符 (參考博文里的轉義字元為毛是/ ?), 如果字串中有一大堆的轉義符,看起來就很凌亂,python也很好的解決了這個問題,如下:
s5 = "Let's go"
python知道你是用 " 來表示字串,所以python就把字串中的單引號當成普通的字元處理了,是不是很簡單。
對於雙引號,也是一樣的,下面舉個例子
s6 = 'I realy like "python"!'
這就是單引號和雙引號都可以表示字串的原因了。
易語言單引號怎麼輸出?
單引號是可以直接輸入使用的 雙引號 「」在易語言中 會被預設裡面的是文字的內容 所以需要使用#引號 或者加入到常量中 呼叫
C. 在C語言中'\"'代表什麼
代表字元 一個雙引號 "
在C語言裡面 雙引號是字元串的界定符
直接寫 在一個雙引號前後寫單引號 第2個單引號會被當成字元串的一部分
匹配起來各種混亂
所以 用轉義字元 \
\" 表明 這個雙引號 不是字元串的界定符 而只是一個字元
你可以用 putchar('\"');
這樣的語句輸出1個雙引號字元
D. c璇璦鍙屽紩鍙峰拰鍗曞紩鍙鋒湁浠涔堝尯鍒錛
1銆佹湰璐ㄥ尯鍒
鍙屽紩鍙烽噷闈㈢殑鏄瀛楃︿覆錛 鑰屽崟寮曞彿閲岄潰鐨勪唬琛ㄥ瓧絎︺
2銆佽緭鍑哄尯鍒
str = 鈥渁鈥濊緭鍑虹殑灝辨槸a榪欎釜瀛楁瘝錛
str = 鈥榓鈥欒緭鍑虹殑嫻嬭瘯65
3銆佸簳灞傚尯鍒
鐢ㄥ崟寮曞彿寮曡搗鐨勪竴涓瀛楃﹀疄闄呬笂浠h〃涓涓鏁存暟錛屾暣鏁板煎瑰簲浜庤ュ瓧絎﹀湪緙栬瘧鍣ㄩ噰鐢ㄧ殑瀛楃﹂泦涓鐨勫簭鍒楀箋
鎵╁睍璧勬枡錛
C 璇璦涓錛岄楀彿錛,錛変篃鍙浠ユ槸榪愮畻絎︼紝縐頒負閫楀彿榪愮畻絎︼紙Comma Operator錛夈傞楀彿榪愮畻絎﹀彲浠ユ妸涓や釜浠ヤ笂錛堝寘鍚涓や釜錛夌殑琛ㄨ揪寮忚繛鎺ユ垚涓涓琛ㄨ揪寮忥紝縐頒負閫楀彿琛ㄨ揪寮忋傚叾涓鑸褰㈠紡涓猴細
瀛愯〃杈懼紡1, 瀛愯〃杈懼紡2, ..., 瀛愯〃杈懼紡n
渚嬪傦細a + b, c = b, c++
閫楀彿榪愮畻絎︾殑浼樺厛綰ф槸鎵鏈夎繍綆楃︿腑綰у埆鏈浣庣殑錛岄氬父閰嶅悎 for 寰鐜浣跨敤銆傞楀彿琛ㄨ揪寮忔渶鍙寵竟鐨勫瓙琛ㄨ揪寮忕殑鍊煎嵆涓洪楀彿琛ㄨ揪寮忕殑鍊箋備笂渚嬩腑錛宑++ 鐨勫礆紙c 鑷澧炰箣鍓嶇殑鍊礆級鍗充負璇ヨ〃杈懼紡鐨勫箋
閫楀彿榪愮畻絎︿繚璇佸乏杈圭殑瀛愯〃杈懼紡榪愮畻緇撴潫鍚庢墠榪涜屽彸杈圭殑瀛愯〃杈懼紡鐨勮繍綆椼備篃灝辨槸璇達紝閫楀彿榪愮畻絎︽槸涓涓搴忓垪鐐癸紝鍏跺乏杈規墍鏈夊壇浣滅敤閮界粨鏉熷悗錛屾墠瀵瑰叾鍙寵竟鐨勫瓙琛ㄨ揪寮忚繘琛岃繍綆椼傚洜姝わ紝涓婁緥涓錛宑 寰楀埌 b 鐨勫煎悗錛屾墠榪涜岃嚜澧炶繍綆椼
鍙傝冭祫鏂欐潵婧愶細鐧懼害鐧劇-C璇璦