草庐IT

EidosValue_Int_vector

全部标签

windows - 所有 Windows 版本都支持 Int64 吗?

如果我使用Int64类型的变量,它是否适用于所有Windows版本:win95、98、2000、nt、xp、vista、win7?无论是什么操作系统,它是32位还是64位?不管他们使用什么CPU?我只是想确定,我的程序可以在所有Windows版本上运行。 最佳答案 语言提供的数据类型的大小不受操作系统或硬件平台的限制。我可以在32位平台上使用64位整数(或者16位、8位或11位,就此而言)。 关于windows-所有Windows版本都支持Int64吗?,我们在StackOverflow

c++ - 如何将 Win32 HRESULT 转换为 int 返回值?

我正在用C++编写Windows控制台应用程序,并希望在成功时返回零,在失败时返回有意义的错误代码(即,S_OK应返回0,而E_OUTOFMEMORY应该返回一个不同于E_FAIL等的返回值)。以下方法可行吗?:intwmain(intargc,wchar_t*argv[]){HRESULThr=DoSomething();return(int)hr;}或者有更好的方法吗?也许是我忘记或找不到的标准Win32API函数或宏? 最佳答案 OP希望返回值为零以指示成功。有些成功代码是非零的,所以...if(SUCCEEDED(hr))r

c++ - 如何删除 vector 中的元素。 (删除无效)

当我使用“删除”删除vector中的元素时,并没有清除内存。例如,我制作了一个大小为2000的vector。创建后程序使用1,5MB内存。当我执行删除调用时,不会清除任何内容。所有的元素都消失了。但它们仍在内存中。例如:#include#includeusingnamespacestd;intmain(){//Makesavectorof2000itemsvectortest(200000);//Pausefortestpurposesystem("pause");//eraseallelementstest.erase(test.begin(),test.end());//Pause

c++ - 如何调用一个带有多个整数和一个整数 vector 的函数?

问题我正在尝试为一种玩具语言编写解释器,我希望它能够调用位于DLL中的函数。在一些external.dll我有:#includeextern"C"{__declspec(dllexport)voidprint(intval){printf("%i\n",val);}__declspec(dllexport)intadd(inta,intb){returna+b;}...morefunctions**thatIdon'tknowthennamesof**}假设我有一个std::stringfunc;这是DLL中过程的名称,可能是"print"或"add",和一个std::vectorar

c++ - C++ 中的 Memory Tracker 在 vector 初始化期间进入无限循环

我正在尝试通过重载new和delete运算符在C++中编写内存跟踪器。但它会进入循环并一次又一次地调用new。以下是我的代码。#ifndefMEMORY_TRACKER_H_#defineMEMORY_TRACKER_H_#pragmawarning(disable:4290)#pragmacomment(lib,"Dbghelp.lib")#include#include#include#include#include#include#includestaticconstintMAX_TRACES=62;staticconstintMAX_LENGTH=256;staticconst

c# - 如何使用 Windbg 检查管理应用程序的 Int64

当使用windbg调试托管进程时,如何查看Int64的值?例如,我有以下构造函数,它的第一个参数是Int64。ItemQuotequote=newItemQuote(1234567890987654L,"5mmSuperWidgets",1000,12999,true,false);我使用windbg调试器在上述构造函数中设置断点以检查其参数。反汇编结果如下。ChildSPIPCallSite0042f05c0043025aEncodingInformation.ItemQuote..ctor(Int64,System.String,Int32,Int32,Boolean,Boolea

windows - main(int argc, char** argv) 的荒谬值

我在旧的C++项目上启动了一个控制台应用程序。在main(intargc,char**argv)中设置断点开始program.exe-debug。根据调试器,argc变为32,argv中的字符串具有奇怪的随机值。继续执行时发生访问冲突,因为argv中的字符串指向无效值。这可能是什么原因造成的? 最佳答案 链接器设置了错误的入口点。对于普通的控制台应用程序,这应该是mainCRTStartup(调试器显示__tmainCRTStartup)。有一个无效的入口点导致main查看堆栈中“碰巧”的内容。发布这个是因为它不是很容易找到。

c# - 将字符串转换为 int 而不会丢失开头的零

我尝试了int.parse,和convertclass来将字符串转换为int。当我转换时。我在开头丢失了我不想要的0。例如:09999变成9999-我不想要这个。我想保持原样。我该怎么做? 最佳答案 myNumber.ToString("D5");//D表示“十进制”,5是您希望数字始终保留的指定位数。这将用零填充您的值,直到达到5位数。 关于c#-将字符串转换为int而不会丢失开头的零,我们在StackOverflow上找到一个类似的问题: https://

c# - 如何将 "int"分配给对象?

我们如何能够将整数分配给.NET中的对象?引用类型派生自System.Object,值类型派生自System.ValueType。那么,这怎么可能呢? 最佳答案 术语“装箱”非常不透明,但使用调试器很容易将实际发生的事情可视化。编写一个像这样的小控制台模式应用程序:usingSystem;namespaceConsoleApplication1{classProgram{staticvoidMain(string[]args){intvalue=42;objectobj=value;}//在指定位置设置断点,然后按F5。当断点命中时

c# - 使用 int[][] 和 int[,] 有什么区别?

这个问题在这里已经有了答案:WhatarethedifferencesbetweenamultidimensionalarrayandanarrayofarraysinC#?(12个答案)关闭9年前。我有perl背景,一直使用int[][]定义二维数组。我知道您可以改用int[,]那么有什么区别呢?