-
有固定作用域的變量,也稱為自動變量,即內存空間的分配和銷毀是自動的。大括號{? }結束就銷毀釋放,便無法再使用這個變量。
自動變量有的地方也叫棧內存,但還是有差別。c++中自動變量用棧的方式管理。棧是先進后出。
堆內存:與棧內存不同,堆內存上的空間不會隨著作用域的結束而被釋放回收。所以堆內存上的空間必須要手動釋放。堆內存用到的函數(shù)在stdlib.h這個頭文件中。其中malloc是如何分配一片內存,返回值是指針,是分配的內存空間的首地址。釋放時使用:free(指針名)
查看全部 -
指針變量:存放變量在內存中的地址。定義一個指針后,它里面存放的是隨機地址,此時它是野指針,操作野指針非常危險,所以要給指針賦值。
取地址符:&
例如:int a=10;
? ? ? ? ? int *p;? //這個寫法就屬于野指針,正確做法是將指針賦值為空int*p=nullptr,空指針意思是這個指針不指向任何地方。
? ? ? ? ? p=&a;? ?//此時指針變量p里存放的就是變量a的地址
指針運算符:*(用來取得某個地址上的數(shù)據(jù))
查看全部 -
枚舉類型:
enum?Week? {????Mon,?//?星期一???? ?????????Tue,?//?星期二???? ?????????Wed,?//?星期三???? ?????????Thu,?//?星期四???? ?????????Fri,?//?星期五???? ?????????Sat,?//?星期六???? ?????????Sun,?//?星期日}; #include?<iostream> int?main(int?argc,char?**argv) {????Week?week?=?Week::Mon;???? ?????????std::cout<<"week:"<<Mon<<std::endl;???? ?????????return?0; ?}
輸出結果week:0
查看全部 -
結構體:幾種相同或者不同的基本數(shù)據(jù)類型的組合。(類似于其他語言中的自定義類型)
輸出第20個學生的數(shù)學和英語成績:
struct?Student {????int?math;???? ?????int?english; ?}; #include?<iostream> int?main(int?argc,char?**argv) {????struct?Student?stu[50];???? ?????stu[20].math?=?90;???? ?????stu[20].english?=?95;???? ?????std::cout<<"第20個學生的數(shù)學和英語成績分別是:"<<stu[20].math<<","<<stu[20].english?<<std::endl;???? ?????return?0; ?}
? ??
查看全部 -
數(shù)組是一個整體,它的內存是連續(xù)的
給數(shù)組中部分元素賦值:當 {} 中的元素數(shù)量少于 [] 中定義的長度的時候,只給前面部分元素賦值,后面的未指定的元素,將被賦值為 0。如下例:
#include <stdio.h>
int main(int argc,char **argv)
{
? ?int a[4] = {1, 2}; // 1, 2, 0, 0
? ?return 0;
}借用此特性,可以把數(shù)組的所有元素初始化為 0。
輸出一個長度為4的數(shù)組的第一個和第三個元素:
? ? ?#include <iostream>
? ? ? int main(int argc,char **argv)
? ? ?{
? ? ? ? ?int a[4] = {1, 2};?
? ? ? ? ?std::cout<<"a[0]:"<<a[0]<<"\n"<<"a[3]:"<<a[3]<<std::endl;
? ? ? ? ?return 0;
? ? ? }
查看全部 -
與:&&
或:||
非:!
查看全部 -
布爾型的用法:
#include?<iostream> int?main(int?argc,char?**argv) { ????int?a?=?1; ????int?b?=?2; ????bool?c1=a>b; ????bool?c2=a<b; ????printf("bool?c1:?%d\n",c1); ????printf("bool?c2:?%d",c2); ????return?0; }
? ? ? ?
查看全部 -
輸出各個數(shù)據(jù)類型的長度:
#include?<iostream> int?main(int?argc,char?**argv) {???? ????printf("int:?%d\n",?sizeof(int));???? ????printf("float:?%d\n",?sizeof(float));???? ????printf("char:?%d\n",?sizeof(char));???? ????printf("double:?%d\n",?sizeof(double));???? ????return?0; ??}
查看全部 -
輸入多個數(shù)據(jù):
#include?<stdio.h>???//(c) int?main() {???? ???int?a?=?0;???? ???int?b?=?0;???? ???scanf("%d,?%d",?&a,?&b);???? ???return?0; ??} ?? #include?<iostream>????//(c++) int?main(int?argc,char?**argv) { ????int?a?=?0; ????int?b?=?0; ????std::cin?>>?a?>>?b; ????return?0; }
使用 cin 可以連續(xù)從鍵盤讀取想要的數(shù)據(jù),以空格、tab鍵或換行符作為分隔符。cin 相對于 scanf 來說,不需要指明類型,用起來更方便一些。
查看全部 -
輸出多個變量:
#include?<stdio.h>??//(c) int?main() {???? int?a?=?99;???? int?b?=?98;???? printf("a:?%d,?b:?%d",?a,?b);???? return?0; } #include?<iostream>????//(c++) int?main(int?argc,char?**argv) {???? ??int?a?=?99;???? ??int?b?=?98;???? ??std::cout<<"a:"<<a<<",b:"<<b<<std::endl;???? ??return?0; ??}
查看全部 -
輸出一個常量:
#include?<iostream>???//(c++) int?main(int?argc,char?**argv) {???? ???const?int?c?=?10;???? ???std::cout<<c<<std::endl;???? ???return?0; } #include?<stdio.h>???//(c) int?main() {???? ???const?int?c?=?10;???? ???printf("%d",c);???? ???return?0; ?}
查看全部 -
輸出一個變量:
#include?<iostream>???//(c++) int?main(int?argc,char?**argv) {???? ???int?a=99;???? ???std::cout<<a<<std::endl;???? ???return?0; } #include?<stdio.h>???//(C) int?main() {??? ????int?a=99;??? ????printf("%d",a);??? ????return?0; ?}
查看全部 -
? ? ? 分別用C和C++輸出hello Word:? ? ? ?
#include<iostream> #include?<stdio.h> int?main(int?argc,char?**argv) {???? ???printf("Hello?World!this?is?C++?style\n");???? ???std::cout<<"hello?word!this?is?C++?style"<<std::endl;???? ???return?0; ?}
? ? ? ?
查看全部 -
c++無GC機制(自動垃圾回收機制),編程中不但要考慮資源的分配,還要考慮資源的回收,要記得手動釋放資源。是密集運算,視頻流媒體,人工智能等對性能要求非常高的領域幾乎唯一的選擇,不適用Web服務器,界面開發(fā),移動應用開發(fā)等領域,
查看全部 -
?1.main 函數(shù)是程序的入口,一個程序里,有且只有一個 main 函數(shù)。程序從 main 函數(shù)開始執(zhí)行,到 main 函數(shù)結束而終止。
2.
#include?<stdio.h> int?main(int?argc,char?**argv) { ????printf("Hello?World!\n"); ????return?0; }
(int argc,char **argv),這是一個參數(shù)列表。第一個參數(shù)"argc"表示參數(shù)個數(shù),第二個參數(shù)"argv"是參數(shù)組,兩個參數(shù)一起表達了這個程序的啟動參數(shù)。return語句,main函數(shù)有一個返回值,這個返回值表示程序執(zhí)行結果。0表示程序執(zhí)行成功,沒有出現(xiàn)問題。如果返回值是非0,那么這個程序執(zhí)行就出現(xiàn)問題。
查看全部
舉報