『壹』 c語言include雙引號和書名號
在C語言中,雙引號和書名號用來包裹字元串和特殊字元,其作用是讓編譯器分別處理和編譯這些特殊字元或字元串。具體來說,雙引號中的字元會被解釋為字元串,而書名號中的字元會被編譯器處理成特殊字元。
『貳』 c語言中單引號和雙引號有什麼區別
單引號和雙引號都有全形和半形之分,全形的又叫中文字元,半形的又稱英文字元。
在c語言中,全形字元沒有任何意義,它就是一個普通字元,沒有含義;半形字元才有不同的意義:
雙引號用來括起一個字元串,如"China";
單引號原來括起一個字元,如'f'。
二者含義不同,不能混用。
『叄』 c語言-雙引號,單引號的區別
"m"在內存中是 "m,\0" //2個位元組
'n'就是n //1個位元組
『肆』 我想知道單引號在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!\n");
我上邊說了函數的作用吧,你給他一個東西,它就給你一個東西在這里
printf()裡面你給了它一個字元串"Hello World!\n",注意C語言里字元串要用雙引號包起來,所以這裡面的雙引號不能丟。你把"Hello World!\n"給了printf(), 那按我們的理論printf()會實現一種功能,它的功能是啥? 運行程序! 看到了吧,它在屏幕上給你「輸出」了一句話——Hello World! 然後游標另起一行。這便是它的功能。就像f(x)=3x+1這個函數的功能是給你計算「一個數的3倍再加1的結果是多少」一樣。
那,你可能要問了,那f(x)=3x+1給我們的4和7反應在printf裡面是什麼呢? 你是問返回值吧,其實printf有返回值,只不過這個函數的返回值我們不需要,沒有用,我們幹嘛用它呢? 你想看它的返回值很簡單,呆會我再跟你說怎麼看這個返回值 。
哦對了,忘了一個東西\n 是吧? 它是一個轉義字元, 說白了就是一個字元, \n是一個整體,別把\和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\n"); 這多牛B啊!!
=================================================================
終於快說完了,最後一塊printf("Hello World!\n")和printf("sum=%d\n",sum)的區別。
在這一塊里呢,我也會把上文說到的printf的返回值這個問題解決。
前者就是輸出字元串,問題不大,關鍵是printf("sum=%d\n",sum) 這個可愁人
首先就是那個%d 很外星。。。 長這么磕磣。。。 你要不管它,你看它還是被""所包起來的吧,那不同的地方可就剩下,sum這2東西了, 你把它倆去掉一看,嘿,和前面的一樣啊,沒錯,這還是printf的本質。
那這%d到底是啥呢,它和,sum又有什麼關系呢?
原來,程序在運行的時候啊,它見到printf裡面的%d 它就先暫停,本來它把sum=已經輸出到屏幕上了,正常思維該輸出%d了啊, 但事實並不是如此,程序這時會停一下,然後它跑到雙引號外邊去找「逗號」 找到了逗號以後呢,它把逗號後面的那個值拿出來,替換那個%d,把它輸出到屏幕上,然後繼續向下輸出。
比如你sum的值是5 , 好了, printf在輸出的時候遇到了%d,它就停了,去逗號後邊找,找到了sum,因為它的值是5, 好,就把5這個值替換%d, 然後輸出到屏幕上。
因此輸出sum=5 然後\n使游標換行。
重頭戲來了,你想看printf的返回值吧? 呵呵,可以啊,有了%d ,這個還難辦到嗎?
我可以先告訴你printf的返回值類型和main一樣,是啥? 是int 一個整數
這個整數代表著你「所輸出的字元串中字元的個數」。哼哼
想知道printf返回值是啥? 我說到這你都不用看了,自己都能算出來
printf("Hello World!\n") 這裡面的字元串中的字元共有13個,那返回值是多?
13唄!不信嗎? 那驗證一下
#include<stdio.h>
int main(void)
{
printf("%d\n",printf("Hello World!\n"));
return 0;
}
你運行看看結果是多少?
=====================================================
上面那程序不理解嗎? 不難理解啊, 我說的printf遇到%d暫停,不輸出,而是去逗號後邊找,找到printf("Hello World!\n"), 那麼它是一個函數調用啊,它有一個返回值啊,它把這個返回值替換了那個%d,輸出到屏幕上,所以你得到了printf的返回值。
如果我對這個程序不理解那改一下
#include<stdio.h>
int main(void)
{
int sum;
sum = printf("Hello World!\n");
printf("%d\n",sum);
return 0;
}
sum接收printf的返回值 ,你看呀, sum = printf("Hello World!\n"); 像不像
y = 3x+1 ?? 這簡直是一樣的!!
看看。結束了,差不多該說的都說了,呵呵, 這回對C 語言有了新的認識吧
其實,整個C語言程序就是函數組成的,所以我在此就先對函數進行說明
等你學到函數那一章的時候,估計也不會很費勁了
但記住,函數並不是C語言的靈魂之處,它的靈魂是指針!
『伍』 引號在c++語言中的用法和作用
引號在c++的作用:
單引號用來表示單個字元
雙引號用來表示字元串,當然字元串也有用char數組表示的情況。
具體可參考c語言程序設計的書籍,清華大學出版社的。
『陸』 c語言中的雙引號和單引號分別是什麼意思呀
單引號用於界定字元常量
雙引號用於界定字元串常量
例如,在C中的頭文件名稱、輸入輸出函數的格式控制符等都屬於字元串,所以要用雙引號界定
『柒』 C語言中,雙引號可以干什麼
雙引號決定一個字元串。
比如char sz[] = "hello,world";
然後輸出它printf("%s",sz);
『捌』 反斜杠字元,單引號字元,和雙引號字元在c語言中是什麼作用,求解
反斜杠字元是:轉義字元,如\n
單引號字元是:是表示一個字元的,就是定義char類型時用,如char 『a』這是定義字元a
雙引號字元:是表示字元
『玖』 c語言中引號的作用
引號裡面的內容一般就是直接在屏幕上顯示的,除了%+字母和\加字母,這些是空之輸出格式的!
『拾』 C語言中#include後用引號與尖括弧的區別是什麼
<>表示程序將會首先且只會去你的系統類庫目錄查找你所想引入的類或者包,一般用來包含標准頭文件;
""表示程序會首先從你的當前目錄(包括設置的所有附加包含目錄)查找你所想引入的類或者包,如果沒有找到,將去系統類庫目錄找,一般用來包含自定義頭文件