C语言调试问题

最近在学c语言基础,在用microsoft visual c++6.0时做例题时碰到一个报错。但是找不到错误的位置,求大佬指点。
这是一个求圆的周长、面积、球表面积和体积的例题。
下面是代码:

#include <stdio.h>
#include <math.h>
#define PI 3.14159 //定义符号常量PI
#define R 10.0  //定义符号常量R
void main()
{
    float l,s; //数据定义语句
    l=2.0*PI*R;
    s=PI*R*R;
    { float v_s,v; //复合语句
        v_s=4*s;
        v=4.0*PI*R*R*R/3.0; }
    printf("%f,%f,%f,%f\n",l,s,v_s,v); }

这是报错:

clipboard.png

请问我这几行代码哪里错了啊?还有,如何调试bug啊?第一次用这个工具。
include前面的"#"号都有,这里显示不出来。

阅读 2.5k
2 个回答

我以及帮你修改了排版,因为 sf 使用的是 markdown,# 是特殊字符,所以显示不出来。


报的 2 个错误,是因为变量 v_s 和 v 都是在 中间的 {} 这个代码块里面定义的,算是这个代码块的局部变量,不能在外面用。

给你一点建议:

  1. 不要使用这么古老的东西了,连 MS 都不维护了,换个新一点的,好用的 IDE 吧(比如 Clion,虽然收费,但使用教育邮箱注册可以免费使用;或者 codeblocks,开源免费;Eclipse,装上 c/c++ 插件;VS Code,微软的非常好用的编辑器,需要装上 C/C++ 插件;等等吧)
  2. IDE 都有调试功能,但我没用过就不评论了,你可以搜索 vc++ 6 + 调试 找下相关教程

变量v_s和v,那边为什么要加大括号?
加了括号以后这两个变量只在这个大括号内有效,无法被大括号外的printf函数使用。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Microsoft
子站问答
访问
宣传栏