关于#c++#的问题,请各位专家解答!

我按照书上打的程序,为什么在VS里面是这种情况呢,请问应该怎么修改程序?

img

改成

scanf_s("%c", &c, 1);

VS 有一些考虑更多安全性的函数 _s 表示 safe 处理字符 和字符串相关时 需要指定长度

方法一:在程序最前面加#pragma warning(disable:4996);
方法二:在程序最前面加#define _CRT_SECURE_NO_WARNINGS;
方法三:在程序最前面加#define _CRT_SECURE_NO_DEPRECATE;

  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7506174
  • 你也可以参考下这篇文章:分析c++内存泄露(使用VS 性能探查器)
  • 除此之外, 这篇博客: C++语言类型详解:编译式、静态类型、过程化编程、面向对象编程和泛型编程中的 静态类型 VS 动态类型 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 理解静态与动态之别,我们要从变量赋值这个操作为切入点。静态类型语言中,变量的类型必须先声明,即在创建的那一刻就已经确定好变量的类型,而后的使用中,你只能将这一指定类型的数据赋值给变量。如果强行将其他不相干类型的数据赋值给它,就会引发错误。而动态类型则没有这样的限制,你将什么类型的数据赋值给变量,这个变量就是什么类型。

    静态类型语言:C、C++、JAVA、C#
    动态类型语言:PHP、Python、Ruby

    注意:使用静态类型的编程语言是在编译时执行类型检查,而不是在运行时执行类型检查。

  • 以下回答由chatgpt基于相关博客总结生成:

    根据问题描述,需要提供错误提示信息和相关代码,但参考资料中给出的代码并没有问题。因此,无法提供具体的解决方案。建议检查问题的错误提示信息,并调试代码找出错误的具体原因,然后针对性地进行修改。可能需要考虑代码逻辑、变量定义和赋值、函数调用等方面的问题。如果您遇到了具体的问题和错误提示信息,可以提供更加具体的信息,以便给出更加准确的解决方案。