色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C/C++入門15個小技巧

j4AI_wujianying ? 來源:工程師曾玲 ? 2019-02-02 16:39 ? 次閱讀

1.int型:絕對值在10^9范圍內的整數都可以定義成int型。

2.long long型:如果long long型賦值大于2^31 -1的初值,則需要在初值后面加上LL,否則會編譯錯誤。

3.float、double輸入輸出格式:使用printf("%f",c);語句時,%f是float和double型的輸出格式。而在使用scanf輸入時,float輸入格式為%f,double輸入格式為%lf。

4.if條件:由于if(n)表示if(n!=0),所以if(!n)表示if(n==0)

5.for語句:注意在C語言中不允許在for(A;B;C)語句的表達式A里定義變量(比如inta=0;的寫法是不允許的),但在C++中可以

6.數組定義:如果數組大小較大(10^6級別以上),則需要將其定義在主函數外面,否則會使程序異常退出。

7.數組賦初值:如果我們定義一個數組int array[10]={12,1,6,4}.可知只對數組的前四項賦值,那么后面沒有賦值的元素默認為0.但如果該數組沒有賦初值,數組中的每個元素都可能會是一個隨機數(不一定是0)。所以如果想給整個數組都賦值為0,簡單介紹以下四種方法:

1、int array[10]={};

2、int array[10]={0};

3、memset函數 :memset(array,0,sizeof(array));//若數組為int array[10],則此處sizeof(array)=4*5=20,因為

memset是按字節賦值. 格式 memset(數組名,值,sizeof(數組名));

4、fill函數 :fill(array,array+5,8);//數組從array[0]到array[4]均被賦值為8,格式 fill(起始地址,結束地址,值);

注意:memset()函數需頭文件. 且memset()只能為數組賦初值0和-1,因為memset()只能以字節為單位賦值fill()函數需頭文件. 且fill()可以為數組或容器的某段區域賦某個任意相同的值.

8.二維數組賦值:若二維數組array[4][5]={{1,2,3,4,5},{2,2,3},{},{4,2,3,5}};可以看出第三行用{}跳過了(如果不加大括號是無法通過編譯的)

9.字符數組初始化:字符數組可以通過直接賦值字符串來初始化(僅限初始化,程序其他位置不允許這樣直接賦值整個字符串)

10.字符數組輸入輸出:定義char str[10]; scanf("%s",str); pritnf("%s",str); 注意字符數組在輸入時不需要加&取地址運算符. 且scanf輸入時%s通過空格或換行來識別一個字符串的結束

gets用來輸入一行字符串.gets識別換行符n作為輸入結束,因此scanf完一個整數后如果要使用gets,需要先用getchar接收整數后的換行符;puts輸出一行字符串后會緊跟一個換行(n)

11.字符數組長度的重要性:字符數組的長度一定要比實際存儲字符串的長度至少多1,作為結束符'0'.注int型數組不需要. 且如果不是使用scanf函數的%s格式或gets函數輸入字符串(例如getchar),一定要手動早輸入的每個字符串后加‘0',否則printf和puts輸出字符串將無法識別字符串末尾而輸出一大堆亂碼.

12.sscanf與sprintf:

sscanf : int n; char str[10]="123"; sscanf(str,"%d",&n); //sscanf寫法的作用是把字符數組str中的內容以"%d"的格式寫到n中(從左往右). sscanf還支持正則表達式.

sprintf : int n; char str[10]="123"; sprintf(str,"%d",n); //sprintf寫法的作用是把n以"%d"的格式寫到str字符數組中(從右往左)

13.引用&:注意要把引用的&與取地址運算符&區分開. 引用并不是取地址的意思,引用不產生副本,而是給原變量起了個別名 .由于引用是產生變量的別名,因此常量不可以使用引用。所以:

C/C++入門15個小技巧

其中不可以直接寫成swap(&a,&b),而必須用指針變量p1和p2存放&a和&b,然后把指針變量作為參數傳入.

14.訪問結構體內的元素:

C/C++入門15個小技巧

于是訪問stu中變量的寫法:

stu.id

stu,name

stu.next

訪問指針變量p中的元素的寫法:

(*p).id <=> p->id

(*p).name <=> p->name

(*p).next <=> p->next

15.結構體的初始化

C/C++入門15個小技巧

注意:如果自己重新定義了構造函數,則默認生成的構造函數就會被覆蓋. 如果想不經初始化就定義結構體變量需手動加上.

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7604

    瀏覽量

    136694
  • 數組
    +關注

    關注

    1

    文章

    417

    瀏覽量

    25939

原文標題:C/C++入門易錯點及常用小技巧

文章出處:【微信號:wujianying_danpianji,微信公眾號:單片機精講吳鑒鷹】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    C語言與C++的區別

    在很大程度上,C++C的超集,這意味著一有效的C程序也是一有效的C++程序。
    發表于 09-16 10:20 ?1149次閱讀

    C++入門基礎教程大全

    C++入門基礎教程大全 C++是一種面向對象的編程語言,但如果系統沒有采用面向對象的技術,C++只能作為面向過程的語言來使用.
    發表于 05-29 10:25 ?0次下載

    C++ 入門自學教程

    C++ 入門自學教程從入門知識開始講起,比較有利于初學者入門掌握,比較好懂,能夠對C++有一
    發表于 11-17 10:36 ?0次下載

    Visual C++編程入門視頻

    Visual C++編程入門視頻!資料來源網絡,如有侵權,敬請見諒
    發表于 11-20 15:10 ?6次下載

    c++入門經典習題集

    讓大家全方位傻瓜式學習大話設計模式(3.45MB)c++入門經典習題集+多年積累的類庫。
    發表于 07-13 15:11 ?2次下載

    C++語言入門教程之C++語言程序設計函數的詳細資料概述免費下載

    本文檔的主要內容詳細介紹的是C++語言入門教程之C++語言程序設計函數的詳細資料概述免費下載內容包括了:1 函數的定義和使用2 函數的參數傳遞3 函數的嵌套調用4 函數的遞歸調用5 內聯函數6 函數重載7 帶默認形參值的函數8
    發表于 09-20 14:51 ?23次下載

    C++入門教程之C++程序設計的課件資料免費下載

    本文檔的主要內容詳細介紹的是C++入門教程之C++程序設計的課件資料免費下載主要內容包括了:1. 認識C++2. C++的現狀和發展3.
    發表于 12-07 08:00 ?33次下載
    <b class='flag-5'>C++</b><b class='flag-5'>入門</b>教程之<b class='flag-5'>C++</b>程序設計的課件資料免費下載

    C語言與C++相互調用

    ? ? 1CC++相互調用 在一嵌入式系統中大部分的底層和驅動層更多的是采用C語言來進行開發,而上層應用、服務更多的采用C++等高級語言
    的頭像 發表于 01-18 11:05 ?3329次閱讀
    <b class='flag-5'>C</b>語言與<b class='flag-5'>C++</b>相互調用

    適合具備 C 語言基礎的 C++ 入門教程(二)

    在上一則教程中,通過與 C 語言相比較引出了 C++ 的相關特性,其中就包括函數重載,引用,this 指針,以及在脫離 IDE 編寫 C++ 程序時,...
    發表于 01-25 19:13 ?1次下載
    適合具備 <b class='flag-5'>C</b> 語言基礎的 <b class='flag-5'>C++</b> <b class='flag-5'>入門</b>教程(二)

    C++學習筆記之c++的基本認識

    自這篇文章我們即將開始C++的奇幻之旅,其內容主要是讀C++ Primer的總結和筆記,有興趣可以找原版書看看,對于學習C++還是有很大幫助的。這篇文章將從一經典的程序開始介紹
    的頭像 發表于 03-17 13:57 ?730次閱讀

    C++入門之string

    前一篇文章我們已經了解了C++中的基本類型,C++還提供了很多抽象數據類型,例如字符串string,string包含多個字符,以及可變長度的vector,vector可以包含多個同一類型的對象
    的頭像 發表于 03-17 13:58 ?560次閱讀

    淺談C語言與C++的前世今生

    C++開發人員將有這些問題歸咎于C,而C開發人員則認為C++過于瘋狂。我覺得站在C的角度看C++
    發表于 05-26 09:27 ?461次閱讀
    淺談<b class='flag-5'>C</b>語言與<b class='flag-5'>C++</b>的前世今生

    c++入門后如何進階

    C++11 是下一 C++ 標準,但我們通常稱之為現代 C++。現代 C++ 也包括了 C++
    發表于 07-21 08:56 ?342次閱讀
    <b class='flag-5'>c++</b><b class='flag-5'>入門</b>后如何進階

    C++簡史:C++是如何開始的

    MISRA C++:2023,MISRA? C++ 標準的下一版本,來了!為了幫助您做好準備,我們介紹了 Perforce 首席技術支持工程師 Frank van den Beuken 博士撰寫
    的頭像 發表于 01-11 09:00 ?581次閱讀
    <b class='flag-5'>C++</b>簡史:<b class='flag-5'>C++</b>是如何開始的

    c語言,c++,java,python區別

    操作系統、嵌入式系統等對性能要求較高的場景。C語言的語法相對簡單,學習曲線較平緩,也是學習其他高級語言的入門語言。 C++C++是在C
    的頭像 發表于 02-05 14:11 ?2366次閱讀
    主站蜘蛛池模板: 91九色网址| 亚洲精品乱码一区二区三区| 午夜免费体验30分| 伊人热人久久中文字幕| a久久99精品久久久久久蜜芽| 国产精品A久久777777| 空姐厕所啪啪啪| 小SB几天没做SAO死了H| 91青青草原| 精选国产AV精选一区二区三区| 欧美精品AV无码一区二区| 亚洲免费观看视频| 日韩一区二区三区精品| 中国老太性色xxxxxhd| 国产青青草原| 日本一在线中文字幕| 中文字幕亚洲欧美日韩2019| 国产麻豆剧看黄在线观看 | 777琪琪午夜理论电影网| 国产亚洲欧美在线中文BT天堂网| 欧美人与动牲交ZOOZ特| 长泽梓黑人初解禁bdd07| 青青久久国产| 99视频精品在线| 玖玖热视频一区二区人妻| 亚洲中文无码AV在线观看| 国产亚洲AV无码成人网站| 天天插天天舔| 国产成人无码AV麻豆| 涩涩免费视频软件| 哒哒哒高清视频在线观看| 日本精品在线观看视频| 白人大战34厘米黑人BD| 欧美亚洲日韩欧洲不卡| a圾片目录大全| 日本久久免费大片| 成人天堂资源WWW在线 | 日本人六九视频| 成年人免费观看的视频| 日本无翼恶漫画大全优优漫画| xart欧美一区在线播放|