在使用Java编码之前,我是用C++编程语言编写代码的新手。我试图解决txt文件作为数据库。但是我在互联网上搜索时遇到了这个错误,我找不到确切的答案?如果您知道,请帮助我。谢谢。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void menu() {
puts("1. List the products");
puts("2. Add a new product");
puts("3. Sell the new product");
puts("4. Search by Barcode");
puts("5. Exit");
}
int main(int argc, char *argv[]) {
FILE *fProduct;
char name[20];
int quantity;
int barcode;
double price;
menu();
fProduct = fopen("Product.txt", "a+");
if (fProduct != NULL) {
while (!feof(fProduct))
{
printf("Name :");
scanf("%s" , name);
printf("Quantity :");
scanf("%d", &quantity);
printf("Barcode Number :");
scanf("%d", &barcode);
printf("Price :");
scanf("%lf", &price);
printf("Are there any product ???");
}
}
fclose(fProduct);
}
最佳答案
fclose
应用了parameter validation assertion。
将您的fclose
调用移动到检查if
的NULL
块内。
关于c++ - 在运行时C++上的调试断言失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46920933/