标签: borland-c++

检查复数是否有NaN

我试图检查一个std::complex由傅里叶变换(使用http://fftw.org/)的数字是否包含NaN真实或图像部分的数字.

我正在使用Borland C++,所以我无法访问std::isnan.我试图NaN通过比较它来检查数字是否与自身相符:

(n.imag() != n.imag())
Run Code Online (Sandbox Code Playgroud)

但是,只要我调用n.imag()or std::imag(n),我就会得到"浮点无效操作".

有没有办法验证一个std::complex是好的; 如果它包含NaN

c++ std borland-c++

5
推荐指数
1
解决办法
2177
查看次数

正在下载Borland BCC

我广泛听说Borland C++ 5.5编译器是免费提供的.搜索下载链接通常只会导致我访问embarcadero.com页面,如果我能弄明白的话,我该死的...

任何人都知道下载BCC 5.5的简单直接方式吗?(对于Windows)

(是的,BCC是超级老旧的.但它是Flagship遗留工具链的一部分,我需要使用它.我认为这是在这种情况下使用BCC的阻力最小的路径.)

编辑:简短的答案直接从这里下载.

c++ compiler-construction borland-c++

5
推荐指数
1
解决办法
4018
查看次数

为什么Borland在不同的C文件中编译同一个对象的多个定义,而GCC没有?

我正在研究全局变量的行为.

到目前为止,我认为全局变量的多重定义是一种非法方式,必须得到一个错误.但是我从Borland C/C++编译器得到了意想不到的结果,而GCC给了我预期的结果.

码:

test1.c:

#include<stdio.h>

void func(void);

int num=1;

void main(){
    func();
    return;
}
Run Code Online (Sandbox Code Playgroud)

test2.c:

#include<stdio.h>

int num=2;

void func(){    
    printf("%d",num);
    return;
}
Run Code Online (Sandbox Code Playgroud)

在MS-DOS提示符下

结果

  • Borland C/C++:

没有错误,编译和链接成功(对我来说这是意料之外的.)执行后test1.exe,控制台上打印出2.这是num定义的价值test2.c.

  • GCC:

GCC给了我一个多重定义的错误num.当然,a.exe没有制作.(这是我所期待的)

为什么会这样?请告诉我.谢谢!

c gcc borland-c++

5
推荐指数
1
解决办法
171
查看次数

BorlandC rand() 的实现

有人知道 Borland C++ 函数的确切实现吗rand()

我尝试了以下操作,但结果与我使用真正的 TurboC 4.5 得到的结果并不相似。当然,我尝试了不同变体的代码,但没有成功。

unsigned int seed = 1;

void srand(unsigned int newSeed) {
    seed = newSeed;
}

#define MAX_RAND 0x7FFF;

unsigned int lrand()
{
    int a = 22695477;
    int c = 1;
    seed = (a * seed + c);
    return seed;
}

unsigned int rand() {
     return (lrand() >> 16) & MAX_RAND;
}
Run Code Online (Sandbox Code Playgroud)

http://en.wikipedia.org/wiki/Linear_congruential_generator

c random borland-c++

4
推荐指数
1
解决办法
1097
查看次数

从用户应用程序访问ring 0模式(以及为什么Borland允许这样做)

随着学期的最后期限临近,我决定开始在我大学的操作系统课程中开展一个项目.项目分配的问题在于它要求学生开发一个用户应用程序(exe),它将作为一个简单的内核(基本过程和线程管理)执行.

我想到的第一件事是:我该如何在用户应用程序中执行特权代码?

在咨询了其他学生(按时完成项目)之后,我了解到他们能够使用Borland 3.1编译器执行特权代码而不会出现问题.然而,他们都没有发现这种奇怪,也不知道为什么会这样.为什么(这里有更好的问题,如何)Borland会这样做吗?这是否违反操作系统安全的基本原则?

注意:我添加了C++标记,因为该项目应该被编写为C++应用程序,大多数特权代码都作为内联汇编执行.

更新我的问题最初的措辞有点差.当然,我能够使用任何编译器使用特权指令编译代码 - 运行代码是问题.

c++ assembly borland-c++

3
推荐指数
2
解决办法
968
查看次数

Borland无法编译,发生了什么,我甚至无法开始

C:\BORLAND\BCC55\BIN>bcc32 hello.cpp
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
hello.cpp:
Error E2209 hello.cpp 2: Unable to open include file 'iostream'
Error E2090 hello.cpp 6: Qualifier 'std' is not a class or namespace name in fun
ction main()
Error E2379 hello.cpp 6: Statement missing ; in function main()
*** 3 errors in Compile ***
Run Code Online (Sandbox Code Playgroud)

你看,我很伤心!:-(

@oggy:我阅读了Embarcadero的说明.现在,它说......

#include <iostream.h>
int main(void)
{
    cout << "Hello." << endl;
    return 0;
}

C:\Borland\BCC55\Bin\MySource>bcc32 hello.cpp
Borland C++ 5.5.1 for Win32 Copyright (c) …
Run Code Online (Sandbox Code Playgroud)

c++ compilation borland-c++

2
推荐指数
1
解决办法
1万
查看次数

borland c ++ builder如何用包制作exe文件

我不知道如何在没有安装Borland C++ Builder软件的情况下在计算机上运行创建应用程序.

c++builder borland-c++

2
推荐指数
1
解决办法
7360
查看次数

Borland C++这个bool函数会返回什么?

bool SomeFunction()
{

}
Run Code Online (Sandbox Code Playgroud)

我无法在我的机器上运行Borland C++,但我需要从C++转换为VB,因此需要有关此功能的帮助.

c++ borland-c++

2
推荐指数
1
解决办法
1064
查看次数

如何在DOSBOX中编译使用graphics.h的代码?

我写了一个代码,在这个代码中我使用graphics.h,在borland c ++或visual我无法打开并运行它,现在我想运行这个代码,我有DOSBOX 0.72,如何用DOSBOX打开这段代码?我的窗户是7 32位

c++ graphics dosbox borland-c++

1
推荐指数
1
解决办法
1万
查看次数

如何使C++程序跨编译器工作

我想知道如何让我的C++程序在编译器之间工作.我想让程序如此,如果它是用borland编译的,它将使用该clrscr()函数,否则它将使用system("CLS").我已经看到代码已经做了类似的事情,但我无法找到它的功能或工作方式的解释.任何帮助,将不胜感激.

c++ visual-c++ borland-c++

1
推荐指数
1
解决办法
1360
查看次数