在VSCode啟動除錯的時候,會出現函式在Main函式之前呼叫的情況,就是一個非常普通的函式而已,按照我的理解肯定是先呼叫主函式才對,如下TimerTon1只是一個全域函式而已,然而它確執行了,并且在主函式沒有呼叫它的情況還執行了。這是什么原因呢?請大神幫忙看看,會不會和VSCode的環境配置有關呢,配置如下?
unsigned char TimerTon1(Ton *pt)
{
printf ("this is here\n");
/*
if (pt->bEnable == 1)
{
if (pt->bR_trig != gTimeNumber)
{
pt->nET++;
}
pt->nET++;
}
else
{
pt->nET = 0;
pt->bR_trig = 0;
}
if(pt->nET >= pt->ntimecount)
return 1;
else
{
return 0;
}
pt->bR_trig = gTimeNumber;
*/
return 0;
}
unsigned char TimerTon2(Ton *pt)
{
printf ("this is here2\n");
return 0;
}
void simluationtime()
{
if (gTimeNumber == 1)
{
gTimeNumber = 0;
return;
}
if (gTimeNumber == 0)
{
gTimeNumber = 1;
return;
}
}
int main(int argc, char const *argv[])
{
printf("this is main\n");
/*
t1.bEnable = 1;
t1.ntimecount = 20000;
while(!TimerTon1(&t1))
{
simluationtime();
}
printf("定時到%d\n",t1.nET);
*/
getchar();
return 0;
}
lanuch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "C++ Launch)", // 配置名稱,將會在啟動配置的下拉選單中顯示
"type": "cppdbg", // 配置型別,這里只能為cppdbg
"request": "launch", // 請求配置型別,可以為launch(啟動)或attach(附加)
"targetArchitecture": "x86", // 生成目標架構,一般為x86或x64,可以為x86, arm, arm64, mips, x64, amd64, x86_64
"program": "${workspaceFolder}/${fileBasenameNoExtension}.exe", // 將要進行除錯的程式的路徑
"miDebuggerPath": "C:/MinGW/bin/gdb.exe", // miDebugger的路徑,注意這里要與MinGw的路徑對應
"args": [], // 程式除錯時傳遞給程式的命令列引數,一般設為空即可
"stopAtEntry": false, // 設為true時程式將暫停在程式入口處,一般設定為false
"cwd": "${workspaceRoot}", // 除錯程式時的作業目錄,一般為${workspaceRoot}即代碼所在目錄
"externalConsole": true, // 除錯時是否顯示控制臺視窗,一般設定為true顯示控制臺
"preLaunchTask": "gcc", // 除錯會話開始前執行的任務,一般為編譯程式,c++為g++, c為gcc
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}{
"version": "2.0.0",
"command": "gcc",
"args": [
"-Wall",
"-g",
"${file}",
"-o",
"${fileBasenameNoExtension}.exe"
],
"echoCommand": true,
"problemMatcher": {
"owner": "cpp",
"fileLocation": [
"relative",
"${workspaceFolder}"
],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
},
"tasks": [
{
"type": "shell",
"label": "gcc",
"command": "C:\\MinGW\\bin\\gcc.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}

uj5u.com熱心網友回復:
建構式是c++的內容uj5u.com熱心網友回復:
C語言無建構式,但是有函式指標~轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/39461.html
標籤:C語言
上一篇:for回圈讀入n個字串問題
下一篇:大一c語言課題求救!!
