鱼C论坛

 找回密码
 立即注册
查看: 4647|回复: 9

后缀名".cpp"和".c"有什么区别??

[复制链接]
发表于 2012-8-14 21:30:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 ilyou2049 于 2012-8-14 22:29 编辑

判断一个数是否为素数的代码。为什么同一段代码保存为".cpp"程序正常,保存为".c"的程序会出错,原因是什么??

  1. #include <stdio.h>

  2. bool Isprime(int val)

  3. {
  4.         int i;
  5.         for (i=2; i<val; ++i)
  6.         {
  7.                 if (val%i==0)
  8.                         break;
  9.         }
  10.                
  11.         if(i == val)
  12.                 return true;
  13.         else         
  14.                 return false;

  15. }

  16. int main(void)
  17. {        
  18.         int m;
  19.         
  20.         scanf("%d",&m);

  21.         if(Isprime(m))
  22.                 printf("Yes\n");
  23.         else
  24.                 printf("No\n");
  25.         
  26.         return 0;
  27. }        
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-14 21:57:40 | 显示全部楼层
问题出在bool上,bool是C++的关键字 C不支持,如果要在c文件里运行的话需要添加头文件<stdbool.h>
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-8-14 22:09:29 | 显示全部楼层

#include <stdbool.h>
不是这样加头文件吗?
出错:d:\1234\c\101-120\111_判断一个数是否为素数.c(6) : fatal error C1083: Cannot open include file: 'stdbool.h': No such file or directory
执行 cl.exe 时出错.
谢谢你的回答
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-8-14 22:27:50 | 显示全部楼层
我的编译器是vc++6.0
加入这三行就可以了
#define bool int
#define false 0
#define true 1
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-14 22:37:08 | 显示全部楼层
bool关键字是C99标准的,而VC6不支持C99标准的
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-15 00:02:44 | 显示全部楼层
哦,这个问题很仔细哦,版本问题吧
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-15 20:13:20 | 显示全部楼层
CPP是C++  C是C
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-15 20:43:37 | 显示全部楼层
C语言没有bool型变量  貌似到C99才支持
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-17 19:29:59 | 显示全部楼层
没关系啊,自己用宏定义或者类型定义就行了,把bool定义成枚举型或者整型咯
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-17 19:57:50 | 显示全部楼层
C99里是 _Bool类型
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-14 16:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表