C++ 基礎知識

一. 預備知識

  1. 1. C++的編程方式

  2. 過程性語言 (結構化、自頂向下)、面向對象語言、泛型編程 (創建獨立于類型的代碼)

  3. 2. 創建源代碼文件的技巧

    ?? ?擴展名:.cpp

二. 第一個程序 - HelloWorld

  1. main()

    入口點

    返回 int

  2. 標準庫

    iostream

    std: 標準庫的縮寫

  3. Statement

    一行,以 ; 結束

  4. 語法

    1)對大小寫敏感,空格不影響

    2)main返回0: 其他數字表示非正常結束

  5. 運行
  6. #include <iostream>
    int main() {std::cout << "Hello World";return 0;
    }

    快捷鍵:control+R

三、基本知識

1. 變量
  1. 1)int:整數 doule:雙精度浮點數

  2. 2)命名應該有意義

    命名約定:

  3. 3)常量:防止變量改變

    int main() {const double pi = 3.14;pi = 0;   //運行將報錯return 0;
    }
2. 數學運算
int x = 10;
int y = x++;    //y=10; x=11;
int x = 10;
int y = ++x;    //y=11; x=11;
3. 標準庫
  1. 1)Standard Output Stream 標準輸出流

    int x = 10;
    int y = 20;
    std::cout << "x = " << x << std::endl<< "y = " << y;

    化簡:

    #include <iostream>
    ?
    using namespace std;
    ?
    int main(){int x = 10;int y = 20;cout << "x = " << x << endl << "y = " << y;return 0;
    }

  2. 2)Standard Input Stream 標準輸入流

    #include <iostream>
    ?
    using namespace std;
    ?
    int main(){cout << "Enter values for x and y";double x;double y;cin >> x >> y;count << x + y;return 0;
    }
  3. 3)使用 #include 引入標準庫,可以調用其中的函數

4. 備注
//單行注釋
//...
?
/**多行注釋,打出/*換行即可自動生成備注塊*/

四、數據類型

c++:靜態類型語言,使用前應先聲明

  1. 大小

    1)整型:

    2)小數型:

    3)其他:

    Using the sizeof() function, we can see the number of bytes taken by a data type.

  2. 初始化
    double price = 99.99;
    float interestRate = 3.67F;   //輸入時最后要加上F,否則默認為雙精度浮點數,會導致數據丟失
    long fileSize = 9000L;    //輸入時最后要加上L,強制轉化為長整數,否則默認為整數,會導致數據丟失
    char letter = 'a';
    bool isValid = false;
    int number = 1.2;   //number = 1;
    int number {};      //number = 0;
    int number {1.2}    //報錯

    也可以定義變量auto,將自動轉化類型。

  3. 進制
  4. 使用16進制表示顏色(RGB)

    int number = 0b11111111;      //number = 255;
    int number = 0xff;            //number = 255;
    int number = 255;             //number = 255;
    unsighed int number = 255;    //number = 255;
    unsighed int number = -255;		//number = 4292967041;
  5. 類型轉化

    1)縮小轉化

    int number = 1'000'000;
    short another = number;		//another = 1690;
    int number = 1'000'000;
    short another{number};		//報錯;

    2)放大轉化

    short another = 100;		
    int number = another;		//another = 100;
  6. 生成隨機數
    #include <cstdlib>int number = rand();		//無論運行多少次都是同樣的結果,不是真正的隨機數
    #include <cstdlib>srand(5);
    int number = rand();		//無論運行多少次都是同樣的結果,不是真正的隨機數
    #include <cstdlib>
    #include <ctime>const short minValue = 0;
    const short maxValue = 9;
    long elapsedSeconds = time(nullptr);									//返回當前時間,從 Jan 1 1970 開始到現在的秒數
    srand(elapsedSeconds);
    int number = (rand() % (maxValue - minValue + 1)) + minValue;		//用取余數決定上限,數字介于0-9

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/718759.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/718759.shtml
英文地址,請注明出處:http://en.pswp.cn/news/718759.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

HarmonyOS-使用call事件拉起指定UIAbility到后臺

使用call事件拉起指定UIAbility到后臺 許多應用希望借助卡片的能力&#xff0c;實現和應用在前臺時相同的功能。例如音樂卡片&#xff0c;卡片上提供播放、暫停等按鈕&#xff0c;點擊不同按鈕將觸發音樂應用的不同功能&#xff0c;進而提高用戶的體驗。在卡片中使用postCardA…

科技的成就(五十七)

535、Machine Learning "1959 年 7 月&#xff0c;塞繆爾首創 Machine Learning 一詞。塞繆爾在“Some Studies in Machine Learning Using theGame of Checkers”一文中給 Machine Learning 下了個非正式定義&#xff1a;沒有明確編程指令的情況下&#xff0c;能讓計算機…

【js中的作用域】

理解 js中的作用我們可以分為三個部分 全局作用域函數作用域塊級作用域 全局作用域 不在任何函數內部或者大括號中聲明的變量,都是再全局作用域下,全局聲明的變量可以在程序中的任何位置訪問 函數作用域 函數作用域也叫局部作用域,如果一個變量聲名在一個函數內部,那么它…

LSTM進行字符級文本生成(pytorch實現)

文章目錄 基于pytorch的LSTM進行字符集文本生成前言一、數據集二、代碼實現 1.到入庫和LSTM進行模型構建2.數據預處理函數3.訓練函數4.預測函數5.文本生成函數6.主函數完整代碼總結 前言 本文介紹了機器學習中深度學習的內容使用pytorch構建LSTM模型進行字符級文本生成任務 一…

王者榮耀整蠱搭建直播新玩法/obs貼紙配置教程

最近很火的王者榮耀整蠱直播&#xff0c;相信很多玩王者的玩家也想開一個直播&#xff0c;但是看到這種直播娛樂效果很有意思也想搭建一個&#xff0c;這里夢哥給大家出了一期搭建的教程&#xff01; 進階版視頻教程&#xff1a; 這期的教程是進階版新玩法升級&#xff0c;具體…

Vue3:使用 Composition API 不需要 Pinia

在 Vue.js 開發的動態環境中&#xff0c;在單個組件中處理復雜的業務邏輯可能會導致笨重的文件和維護噩夢。雖然 Pinia 提供集中式狀態管理&#xff0c;但僅依賴它來處理復雜的業務邏輯可能會導致代碼混亂。本文探討了使用 Composition API 的替代方法&#xff0c;說明開發人員…

數據庫表 索引

目錄 一、索引的分類 1、按存儲形式: 1&#xff09;B-TREE索引&#xff1a; 2&#xff09;位圖索引&#xff1a; 3&#xff09;反向鍵索引&#xff1a; 4&#xff09;基于函數的索引&#xff1a; 2、按唯一性&#xff1a; 1&#xff09;唯一索引&#xff1a; 3、按列的個數…

代碼隨想錄算法訓練營第八天

344. 反轉字符串 方法&#xff1a; 方法一&#xff1a; 直接用reverse函數 注意&#xff1a; 代碼&#xff1a; class Solution { public:void reverseString(vector<char>& s) {return reverse(s.begin(), s.end());} };運行結果&#xff1a; 方法&#xff1…

解釋前端路由的概念,以及單頁應用(SPA)和多頁應用(MPA)的區別

前端路由是現代Web應用中的一種設計模式&#xff0c;它允許用戶在單個網頁應用程序&#xff08;SPA&#xff09;內部通過改變URL而無需重新加載整個頁面來切換不同的視圖或內容。在傳統的多頁應用&#xff08;MPA&#xff09;中&#xff0c;每訪問一個新頁面&#xff0c;瀏覽器…

搜索算法(算法競賽、藍橋杯)--雙向DFS+二分查找

1、B站視頻鏈接&#xff1a;B26 雙向DFS 送禮物_嗶哩嗶哩_bilibili #include <bits/stdc.h> using namespace std; int n,m; int g[46];//存儲所有物品的質量 int w[1<<23];//存儲所有能湊出來的重量 int ans,cnt;//w的個數是cnt//搜索第u個數&#xff0c;和為s; …

Geeker Admin添加若以分離版本的后臺作為后臺

添加驗證碼 下載若依賴前后端分離版本&#xff0c;配置好自己數據庫&#xff0c;redis連接地址 登錄添加驗證碼 配置自己的若依后端連接地址 添加驗證碼請求方法 登錄頁面登錄輸入框添加驗證碼&#xff0c;uuid,調用的驗證碼刷新方法 注意&#xff1a;這里要用響應式定義驗證…

5_怎么看原理圖之協議類接口之NAND Flash筆記

NAND Flash原理圖&#xff1a; 由NAND Flash的原理圖可以看出&#xff0c;做為一個存儲芯片&#xff0c;只有I/O引腳&#xff0c;并沒有地址引腳&#xff0c;怎么傳地址&#xff1f;遵循一定的規范&#xff0c;先通過LDATA把地址傳出去&#xff0c;再傳數據。具體的需要查看芯片…

vue前端數據轉換顯示

<el-table-column label"項目模板名稱" align"center" prop"tempName" width"180" :formatter"templFormat" /> :formatter"templFormat" // 模板名單 optionTempls: [], // datas value templFormat(row,…

HTTP Cookie 你了解多少?

Cookie是什么&#xff1f; 先給大家舉個例子&#xff0c;F12 打開瀏覽器的頁面之后&#xff0c;我們能在 Response Headers 的字段里面看到一個header 叫做 Set-Cookie&#xff0c;如下所示 圖中包含的 Set-Cookie 為 Set-Cookie:uuid_tt_dd10_20293537580-1709432565344-232…

Transformer模型分布式并行通信量淺析

1.數據并行DP&#xff08;樸素數據并行&#xff0c;Zero數據并行之后補充&#xff09; O ( h 2 ? l ) O(h^2*l) O(h2?l) 每臺機器做完自己的梯度后需要做一次All reduce操作來累積梯度&#xff0c;故一個batch計算發送的數據量為每層梯度大小 h 2 h^2 h2乘以層數 l l l 優點…

【李沐論文精讀】Resnet精讀

論文地址&#xff1a;Deep Residual Learning for Image Recognition 參考&#xff1a;撐起計算機視覺半邊天的ResNet【論文精讀】、ResNet論文逐段精讀【論文精讀】、【李沐論文精讀系列】 一、導論 深度神經網絡的優點&#xff1a;可以加很多層把網絡變得特別深&#xff0c;…

力扣周賽387

第一題 代碼 package Competition.The387Competitioin;public class Demo1 {public static void main(String[] args) {}public int[] resultArray(int[] nums) {int ans[]new int[nums.length];int arr1[]new int[nums.length];int arr2[]new int[nums.length];if(nums.leng…

Linux系統Docker部署RStudio Server

文章目錄 前言1. 安裝RStudio Server2. 本地訪問3. Linux 安裝cpolar4. 配置RStudio server公網訪問地址5. 公網遠程訪問RStudio6. 固定RStudio公網地址 前言 RStudio Server 使你能夠在 Linux 服務器上運行你所熟悉和喜愛的 RStudio IDE&#xff0c;并通過 Web 瀏覽器進行訪問…

第二十四章 :Docker 部署 SpringBoot

第二十四章 :Docker SpringBoot 配置文件容器外加載部署 Docker version 25.0.3, build 4debf41 ,Docker Compose version v2.24.2容器運行后,若需修改配置文件,只需修改宿主機的application-prod.yml ,重啟容器即可。 Springboot 2.x 版本 部署規劃 服務器IP192.168.92…

4. 編寫app組件

1. 代碼 main.ts // 引入createApp用于創建應用 import {createApp} from "vue"// 引入App根組件 import App from ./App.vue createApp(App).mount(#app) App.vue <!-- vue文件可以寫三種標簽1. template標簽&#xff0c;寫html結構2. script 腳本標簽&…