【Visual Studio】使用VS調試(Debug)

確保在Debug模式下而不是Release

斷點(break point)

直接在有代碼的行前單擊,會出現紅色的點(再次單擊會取消);或者光標停留在某行,按F9

這意味著程序當執行到這一行時會終止

在打完斷點后點擊”本地Windows調試器“或者按F5

往下翻會有代碼供測試

界面如下:

Debug01

在工具欄有這樣三個操作

Debug02

  • 逐語句(step into):步入進函數,看看這個函數做了什么——F11
  • 逐過程(step over):從當前函數跳到下一行代碼——F10
  • 跳出(step out):跳出當前函數,回到調用這個函數的位置——Shift+F11

測試代碼

#include<iostream>
using namespace std;
int main() {int a = 8;a++;const char* string = "Hello";for (int i = 0; i < 5; i++) {const char c = string[i];cout << c << endl;}cout << "Hello World" << endl;
}

首先我們來看a的值,顯示10016,你可能會疑惑:為什么是10016?為什么不是10086? 為什么不是8?

這是因為雖然箭頭此時指向這條語句,但并不意味著已經運行了這行代碼;而是我們正要運行它

所以調試器顯示的是:a將要被設置的內存位置的數字

我們沒有把這個變量設置成任何東西,它只是未初始化的內存

看到這里你就明白了為什么你的a的值既不是8也不是10016

內存視圖(memory view)

  • 調試->窗口->內存->內存1
  • Debug->windows->memory->memory1

輸入&a 就被帶到變量a的內存地址

按F10后我們可以觀察到a的值變為了8(局部變量/自動窗口)

四個字節的內存也被設置為8(內存1): 08 00 00 00

再按F10,a變為了9

再按F10,string也發生了變化。前面的是它的地址,

將其復制到內存1中查找:48 65 6c 6c 6f ;這是ASCII碼,翻譯過來就是Hello

如果你不想一個個按F10,而是讓程序接著運行到某一句,就在那一句前打斷點,按F5或continue

另外,你還可以右鍵->轉到反匯編,來查看CPU指令

以上就是全部內容,希望你能很好的應用Debug

視頻:https://www.youtube.com/watch?v=0ebzPwixrJA

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

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

相關文章

B2.0:對硬件學習的一些個人心得感悟

對于硬件學習&#xff0c;所有人都會迷茫的找不到學習的路徑和方向&#xff0c;都是自我摸索或者老師帶領或者其他情況&#xff0c;而我倒是沒有機會接觸到現實的老師帶我領進這個門&#xff0c;自然走的彎路比較多&#xff0c;所以引申出這篇文章&#xff0c;來聊聊硬件學習的…

Cursor設置

一&#xff1a;設置 Port: 7890TUN Mode&#xff1a;開啟二&#xff1a;Editor Settings值為http://127.0.0.1:7890三&#xff1a;Cursor 測試一下

Windows下使用PyInstaller打包PyQt項目

在 Windows 環境下&#xff0c;使用 PyQt 開發的項目可以通過多種工具打包成 可執行文件&#xff08;.exe&#xff09;&#xff0c;以下是幾種常見的方法及詳細步驟&#xff1a;1. 使用 PyInstallerPyInstaller 是最常用的 Python 打包工具&#xff0c;支持 PyQt5/PyQt6/PySide…

AI大語言模型在生活場景中的應用日益廣泛,主要包括四大類需求:文本處理、信息獲取、決策支持和創意生成。

一、AI大語言模型生活應用全景圖&#xff08;Mermaid流程圖&#xff09;graph TDA[生活小事需求] --> B{需求分類}B --> C[文本處理類]B --> D[信息獲取類]B --> E[決策支持類]B --> F[創意生成類]C --> C1[郵件寫作]C --> C2[內容潤色]C --> C3[文檔總…

物奇路由器Wi-Fi芯片榮膺2025中國創新IC-強芯領航獎,并亮相第五屆RISC-V中國峰會

近日&#xff0c;第五屆中國集成電路設計創新大會在蘇州舉辦&#xff0c;物奇攜多款高性能網絡通信與終端人工智能芯片亮相展會&#xff0c;其中首顆路由器Wi-Fi6芯片WQ9301憑借獨特的架構創新和領先的性能優勢&#xff0c;在國產IC強芯評選中脫穎而出&#xff0c;榮膺2025中國…

【已解決】npm install報錯

~/autodl-tmp/App/magic_conch_frontend# npm install報錯內容&#xff1a;WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: vitejs/plugin-vue5.1.4, npm WARN EBADENGINE required: { node: ^18.0.0 || >20.0.0 }, npm WARN EBADENGINE current: { no…

IPC總結

IPC 是 Inter-Process Communication&#xff08;進程間通信&#xff09;的縮寫&#xff0c;指的是操作系統中不同進程之間傳遞數據、交換信息或同步行為的機制。由于進程在內存中擁有獨立的地址空間&#xff0c;無法直接訪問彼此的內存&#xff0c;因此需要通過操作系統提供的…

java之父-新特性

目錄 一.函數式接口Functional Interface 1. Supplier接口 --供給型接口 2. Consumer接口 --消費型接口 3.Function接口 --轉換型接口 4. Predicate接口--斷言型接口 5. Comparator接口--比較器接口 一.函數式接口Functional Interface 只有一個抽象方法的接口&#xff…

GPT-5的多模態能力如何?

GPT-5的多模態能力如何&#xff1f;概述問題1-非整點鬧鐘問題2-數數問題一問題3-數數問題二小結概述 2025年&#xff0c;8月8日凌晨&#xff0c;OpenAI 發布了 GPT-5&#xff0c;讓我們看看其多模態能力如何&#xff0c;用之前大模型無法解決的題目測試&#xff0c;數數問題時…

多模態RAG賽題實戰--Datawhale AI夏令營

參考自科大訊飛AI大賽&#xff08;多模態RAG方向&#xff09; - Datawhale 賽題意義&#xff1a; 我們正處在一個信息爆炸的時代&#xff0c;但這些信息并非以整潔的純文本形式存在。它們被封裝在各種各樣的載體中&#xff1a;公司的年度財報、市場研究報告、產品手冊、學術論…

SQL Server 創建 PostgreSQL 數據庫 鏈接服務器指南

SQL Server 創建 PostgreSQL 數據庫 鏈接服務器指南SQL Server 創建 PostgreSQL 數據庫 鏈接服務器指南一、準備工作二、創建鏈接服務器三、測試連接四、常見問題解決五、注意事項SQL Server 創建 PostgreSQL 數據庫 鏈接服務器指南 一、準備工作 安裝 PostgreSQL ODBC 驅動&a…

李宏毅深度學習教程 第16-18章 終身學習+網絡壓縮+可解釋性人工智能

【2025版】44、第十四節 機器終身學習 一 為什么今日的人工智能A_嗶哩嗶哩_bilibili 【2025版】42、第十三節 神經網絡壓縮 一 類神經網絡剪枝PruA_嗶哩嗶哩_bilibili 【2025版】30、第九節 機器學習的可解釋性 上 – 為什么神經網絡可以正_嗶哩嗶哩_bilibili 目錄 1. 終生…

LiveQing視頻RTMP推流視頻點播服務功能-云端錄像支持按時間段下載錄像時間段下載視頻mp4

LiveQing視頻RTMP推流視頻點播服務功能-云端錄像支持按時間段下載錄像時間段下載視頻mp41、云端錄像2、配置云端錄像3、查看云端錄像3、列表模式4、時間段下載5、時間段下載接口6、RTMP推流視頻直播和點播流媒體服務1、云端錄像 LiveQing 支持服務器集中錄像&#xff0c;將rtm…

Spark在什么情況下CBO才會判斷失誤,如何避免

在 Spark 中&#xff0c;CBO&#xff08;基于成本的優化器&#xff0c;Cost-Based Optimizer&#xff09;通過分析表的統計信息&#xff08;如行數、列基數、數據分布等&#xff09;計算不同執行計劃的“成本”&#xff0c;并選擇成本最低的計劃。但在以下場景中&#xff0c;CB…

【第12話:感知算法基礎4】圖像分割:深度學習圖像分割模型介紹入門及常用模型詳解

深度學習圖像分割模型介紹入門及常用模型詳解 圖像分割是計算機視覺的核心任務&#xff0c;旨在將圖像劃分為語義區域。隨著深度學習的發展&#xff0c;分割模型在精度和效率上取得重大突破。以下按技術演進順序詳解主流模型&#xff1a;1. FCN&#xff08;全卷積網絡&#xff…

AI 大模型企業級應用落地挑戰與解決方案

引言&#xff1a;AI 大模型的企業價值與落地困境近年來&#xff0c;以 GPT-4、Claude 3、文心一言為代表的大語言模型&#xff08;LLM&#xff09;展現出驚人的自然語言理解與生成能力&#xff0c;吸引了眾多企業的關注。據 Gartner 預測&#xff0c;到 2025 年&#xff0c;40%…

微服務如何保證系統高可用?

今天我們來探討一個綜合性但至關重要的話題&#xff1a;給你一個微服務應用&#xff0c;你該如何系統性地保證其高可用性&#xff1f;在互聯網技術崗的面試中&#xff0c;高并發、高可用和大數據通常被視為衡量候選人經驗的三大黃金標準。但說實話&#xff0c;是否擁有真正的高…

推理路徑的動態調控:讓大模型學會“恰到好處”的思考

當前大型語言模型&#xff08;LLM&#xff09;通過思維鏈&#xff08;CoT&#xff09;提升復雜任務推理能力&#xff0c;但研究表明其推理路徑存在嚴重冗余——例如反復驗證或無效思維跳躍&#xff0c;導致計算資源浪費和“幻覺”增加。論文&#xff1a;Test-time Prompt Inter…

springboot 2.4跨域變化和swagger結合的問題

前言 最近升級老項目&#xff0c;springboot2.2升級2.x最新版&#xff0c;升級項目本身升級很正常&#xff0c;畢竟springboot升級3.x以下&#xff0c;升級3.x需要spring6.x&#xff0c;需要jdk17.但是升級的項目在自測時正常&#xff0c;一旦真正測試就報跨域問題了。排查才發…

AWT 基本組件深入淺出:Button/Label/TextField/Checkbox/Choice/List 全面實戰與性能優化

Java AWT 基本組件的原理與用法&#xff0c;提供可運行示例、布局最佳實踐、事件處理與“性能優化”建議&#xff0c;幫助你快速構建穩定的桌面界面。 Java AWT, GUI, Button, Label, TextField, Checkbox, CheckboxGroup, Choice, List, 事件處理, 布局管理器, 性能優化 AWT…