回 帖 发 新 帖 刷新版面

主题:我学c语言

我在这里下载的tc2.0安装后直接运行它里面的程序示例.显示是"unable to open the include file".请问这个问题如何解决?是不是还需要安装库函数?那又在哪里能找到?

回复列表 (共459个回复)

371 楼

我都很想学好要呀!有没有什么建议呀?

372 楼

真是个好地方,大家都有这么热心。
我也是个c语言初学者,我到大家的热情真的很感动,所以我马上就申请加入了,还请各位以后多指教!

373 楼

555555555好感动啊!
我今天上网搜了一天,就是要解决这个打不开库函数的问题!终于可以了,谢谢啦,我在option里看到 tc的默认路径就是C:\,终于改回来了
不好意思,原来学C没有好好学,下学期要准备考程序员了,所以好好补一下!有没有志同道合的朋友,一起讨论啊!我的QQ 84795913

374 楼

大家好!qq:252665297

375 楼

大家好
我也真的很想学C语言的
但是,自己是一个超级初学者,什么也不会,连最基本的都不会。
不知道今后的道路应该怎么走,要怎么走。
希望有高手可以带我,我的QQ是275161520
很想和大家一起探讨关于学习C方面的话题
虽然我是菜鸟一个,但希望大家可以帮助我

376 楼

各位大家好:
  这个程序咱们边啊???
     “自己编写一个产生随机数的函数”。谢谢拉!!!!!!

377 楼

大家好:
  我有一个问题啊:
    怎么样来写这个程序啊????
       “自己写一个产生随机数的函数”。[size=5]大家好:[/size][size=6]自己写一个产生随机数的函数[/size][color=800080]自己写一个产生随机数的函数[/color]

378 楼

好高深啊!

379 楼

第 377 楼 的兄弟:
首先我要声名一点 那就是没有绝对的随机函数
比如,c语言里的随机库函数产生的随机数字每次运行都是相同的,即不具备严格的随机性。
计算机不会产生绝对随机的随机数,计算机只能产生“伪随机数”。其实绝对随机的随机数只是一种理想的随机数,即使计算机怎样发展,它也不会产生一串绝对随机的随机数。计算机只能生成相对的随机数,即伪随机数。
计算机的伪随机数是由随机种子根据一定的计算方法计算出来的数值。所以,只要计算方法一定,随机种子一定,那么产生的随机数就是固定的。
只要用户或第三方不设置随机种子,那么在默认情况下随机种子来自系统时钟。


如:
//随机种子来自系统时钟
static unsigned int RAND_SEED;

unsigned int random(void)
{
    RAND_SEED=(RAND_SEED*123+59)%65536;
    return(RAND_SEED);
}

void random_start(void)
{
int temp[2];
movedata(0x0040,0x006c,FP_SEG(temp),FP_OFF(temp),4);
RAND_SEED=temp[0];
}

random为产生随机数函数
movedata(0x0040,0x006c,FP_SEG(temp),FP_OFF(temp),4);

这个函数用来移动内存数据,其中FP_SEG(far pointer to segment)是取temp数组段地址的函数,FP_OFF(far pointer to offset)是取temp数组相对地址的函数,movedata函数的作用是把位于0040:006CH存储单元中的双字放到数组temp的声明的两个存储单元中。这样可以通过temp数组把0040:006CH处的一个16位的数送给RAND_SEED。

random用来根据随机种子RAND_SEED的值计算得出随机数,其中这一句:

    RAND_SEED=(RAND_SEED*123+59)%65536;

是用来计算随机数的方法,随机数的计算方法在不同的计算机中是不同的,即使在相同的计算机中安装的不同的操作系统中也是不同的。我在linux和windows下分别试过,相同的随机种子在这两种操作系统中生成的随机数是不同的,这说明它们的计算方法不同。

380 楼

其实,不用那么麻烦。那是因为你设置的路径不对。把TC所在的子文件都要加上。

我来回复

您尚未登录,请登录后再回复。点此登录或注册