查阅HexEditor插件的时候发现如下代码,括号内定义的局部变量为什么可以拿出来用?
/* i 是局部变量 */
for (UINT i = 0; i < length; i++)
{
}
for (i = 1; i <= max; i++)
有时候又不可以,会报错,是怎样配置VS使得VS支持或不支持以上“特性”?
补充图片:c++设置
/GS /analyze- /W4 /FAu /Zc:wchar_t /I"../../src" /I"../../src/HelpDlg" /I"../../src/MISC" /I"../../src/OptionDlg" /I"../../src/UserDlg" /I"../../../Common/Ccpp" /I"../../../NativeLang/src" /Od /Fd"Debug\vc142.pdb" /Zc:inline /fp:precise /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_USRDLL" /D "HEXEDITOR_EXPORTS" /D "_WINDLL" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX- /Zc:forScope- /RTC1 /Gd /Oy- /MDd /FC /Fa"Debug\" /EHsc /nologo /Fo"Debug\" /Fp"Debug\HexEditor.pch" /diagnostics:column
link设置
/OUT:"D:\Downloads\npp.7.8.9.bin\plugins\HexEditor/HexEditor.dll" /MANIFEST /NXCOMPAT /PDB:"Debug\HexEditor.pdb" /DYNAMICBASE "shlwapi.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /IMPLIB:"Debug\HexEditor.lib" /DEBUG /DLL /MACHINE:X86 /SAFESEH /INCREMENTAL /PGD:"Debug\HexEditor.pgd" /SUBSYSTEM:WINDOWS /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Debug\HexEditor.dll.intermediate.manifest" /ERRORREPORT:PROMPT /NOLOGO /TLBID:1