为啥dev-c++可以正常编译的程序到了vs里面就报错了?
图1到图3是vs报的错误,图4是dev-c++的正常运行 主函数末尾的花括号漏掉了吧。 henkuderen 发表于 2022-4-20 17:46主函数末尾的花括号漏掉了吧。
我检查了一下,并没有呀,说是scanf的返回值被忽略 henkuderen 发表于 2022-4-20 17:46
主函数末尾的花括号漏掉了吧。
好像全部程序都不行,都是说scanf的值返回值被忽略 henkuderen 发表于 2022-4-20 17:46
主函数末尾的花括号漏掉了吧。
我看别人说是要加上这一串代码才行,不然scanf会报错,但是我加上了好像也没用#define _CRT_SECURE_NO_WARNINGS 1613551 发表于 2022-4-20 17:57
我看别人说是要加上这一串代码才行,不然scanf会报错,但是我加上了好像也没用#define _CRT_SECURE_NO_WA ...
vs里面的scanf函数好像是scanf_s这个格式,可以试试,我也不确定对不对哈哈 你都会更复杂的贴图了,为什么不直接更简单直接地把你的代码贴出来呢。 返回值被忽略你就搞两个变量放上去装返回值试试嘛。 这个可以解决的 scanf_s
防止溢出 henkuderen 发表于 2022-4-21 09:03
你都会更复杂的贴图了,为什么不直接更简单直接地把你的代码贴出来呢。
不好意思,忘记把代码弄出来了
#include <stdio.h>
int main() {
int a, b, c;
int d, e, f;
int h = 0;
printf("请输入你的生日(如果1988-05-20):");
scanf_s("%d-%d-%d", &a, &b, &c);
printf("请输入今年的日期(如2016-03-28):");
scanf_s("%d-%d-%d", &d, &e, &f);
for (; a <= d; a++) {
int g = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
g = (a % 400 == 0 || (a % 4 == 0 & a % 100 == 0))? 29 : 28;
for (; b <= 12; b++) {
for (; c <= g; c++) {
if (a == d && b == e && c == f) {
goto result;
}
h++;
}
c = 1;
}
b = 1;
}
result:
printf("你在这个世界上总共生存了%d天\n", h);
return 0;
} 沮授 发表于 2022-4-21 10:33
scanf_s
防止溢出
这个确实解决了scanf的问题了..结果又出现了新的问题 Z244439775 发表于 2022-4-20 18:50
vs里面的scanf函数好像是scanf_s这个格式,可以试试,我也不确定对不对哈哈
诶,难道你们都不是用vs的吗,我说听别人说dev c++太简陋了,才用vs的,然后确实是用scanf_s这个格式 FK二十一 发表于 2022-4-21 09:31
返回值被忽略你就搞两个变量放上去装返回值试试嘛。
{:10_257:}可是什么是返回值 沮授 发表于 2022-4-21 10:33
scanf_s
防止溢出
{:10_285:}解决了这个又有新问题了 这是新的问题....
下面是代码
#include <stdio.h>
int main() {
int a, b, c;
int d, e, f;
int h = 0;
printf("请输入你的生日(如果1988-05-20):");
scanf_s("%d-%d-%d", &a, &b, &c);
printf("请输入今年的日期(如2016-03-28):");
scanf_s("%d-%d-%d", &d, &e, &f);
for (; a <= d; a++) {
int g = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
g = (a % 400 == 0 || (a % 4 == 0 & a % 100 == 0))? 29 : 28;
for (; b <= 12; b++) {
for (; c <= g; c++) {
if (a == d && b == e && c == f) {
goto result;
}
h++;
}
c = 1;
}
b = 1;
}
result:
printf("你在这个世界上总共生存了%d天\n", h);
return 0;
} 1613551 发表于 2022-4-21 11:03
这是新的问题....
下面是代码
上面的代码我在vscode跑了,没发现问题。
没有语法错误,你看看是不是跑错执行文件了。 FK二十一 发表于 2022-4-21 15:03
上面的代码我在vscode跑了,没发现问题。
没有语法错误,你看看是不是跑错执行文件了。
我也可以了,不知道是什么问题,我把那个文件删了,又新建了一个就可以了 1613551 发表于 2022-4-21 15:12
我也可以了,不知道是什么问题,我把那个文件删了,又新建了一个就可以了
执行文件用的原来的,不就相当于没改嘛 1613551 发表于 2022-4-21 10:59
诶,难道你们都不是用vs的吗,我说听别人说dev c++太简陋了,才用vs的,然后确实是用scanf_s这个格式
用vscode,更复杂的项目用clion,vs太大了太重了,各种功能眼花缭乱的
页:
[1]
2