c - 未找到源 chkstk.asm

标签 c visual-studio-2013 structure

我正在尝试练习结构,从我的类(class)提供给我的视频中,唯一的区别是他使用的是旧版本的 Visual Studio ,当我尝试进入代码时,我收到错误源未找到 chkstk.asm I不知道如何获得这个,谷歌搜索没有给我带来什么。这是我到目前为止所拥有的代码,如果它有任何帮助的话。老实说 Visual Studio 给我带来了很多未知的新问题,让我想回到以前使用的简单文本编辑器。

#include <stdio.h>
#include <stdlib.h>
#include<string.h>
typedef struct{
char name[40];
short int number;
double wholesale;
double retail;
short int onHand;

}PRODUCT;

void fillInProducts(PRODUCT[], int* pSize);
void fillInProducts(PRODUCT inventory[], int *pSize){
    strcpy_s(inventory[*pSize].name, 40,"Handsaw");
    inventory[*pSize].number = 3456;
    inventory[*pSize].onHand = 12;
    inventory[*pSize].wholesale = 12.34;
    inventory[*pSize].retail = 23.99;
    (*pSize)++;
}

main(){


int effectiveSize=0;
    PRODUCT hammer = { "Hammer", 1234, 5.50, 8.99, 4 };
    PRODUCT inventory[500];
    fillInProducts(inventory, &effectiveSize);
    system("pause");

}

最佳答案

这是编译器运行时支持的一部分。是否有它取决于您使用的 VS 版本。编译器将在具有大堆栈帧的函数开始时生成对 chkstk 的堆栈检查调用。更多详细信息请参见:http://www.codeguru.com/cpp/v-s/debug/article.php/c19241/Adventures-with-chkstk.htm

由于 PRODUCT 数组较大,您的 main 函数具有非常大的堆栈帧。这就是堆栈检查调用的来源。出于您的目的,您可以忽略它。您对调试运行时堆栈检查代码不感兴趣。只需跨过它并调试您的代码即可。

我必须对您的 main 函数提出异议。它应该是int main(void)

关于c - 未找到源 chkstk.asm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29138691/

相关文章:

visual-studio-2013 - 默认应用程序收到纹波仿真错误

javascript - 结构与 Javascript 代码? CSS、Divs,然后是脚本?

c - 将多维数组的一行作为参数传递

boost - 需要在Visual Studio中编译缺少的 `detour 3.0`库

检查变量是否为某个值

C语言 : Getting Segmentation fault on Declaring an array

go - 不为我自己的包使用 repo 路径的影响

c - 另一个 "Why is my Uva 3n+1 solution not being accepted?"问题

C: 通过 execl 传递套接字连接

c - 在 C 中实现一个字符串转换表