小编lam*_*mas的帖子

C和汇编程序实际编译的是什么?

所以我发现C(++)程序实际上并没有编译成简单的"二进制"(我可能在这里遇到了一些问题,在这种情况下我很抱歉:D)但是对于一系列事物(符号表) ,os相关的东西,...)但......

  • 汇编程序"编译"到纯二进制文件?这意味着除了预定义的字符串等资源之外没有额外的东

  • 如果C编译成除了普通二进制文件以外的其他内容,那么小型汇编程序引导程序如何只是将指令从HDD复制到内存并执行它们?我的意思是,如果操作系统内核(可能用C语言编写)编译成不同于普通二进制文件的东西 - 引导加载程序如何处理它?

编辑:我知道汇编程序没有"编译",因为它只有你的机器的指令集 - 我没有找到汇编程序"汇编"的好词.如果你有一个,请留在这里作为评论,我会改变它.

c c++ compiler-construction assembly linker

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

在现代复杂游戏中实现成就系统

如今创建的许多游戏都有自己的成就系统,奖励玩家/用户完成某些任务.stackoverflow上的徽章系统完全相同.

虽然有一些问题我无法找到好的解决方案.

成就系统必须始终关注某些事件,想想一个提供20到30个成就的游戏,例如:战斗.服务器会检查这些事件(如:玩家避免X在这场战斗中对手还是玩家的攻击走到X英里)的所有时间.

  • 服务器如何处理这么大量的操作而不会减速甚至崩溃?

成就系统通常需要仅在游戏的核心引擎中使用的数据,如果没有那些令人讨厌的成就,就不需要那些数据(想想例如:每次战斗中玩家跳跃的频率,你不要我不想将所有这些信息存储在数据库中.)我的意思是,在某些情况下,添加成就的唯一方法是将检查其当前状态的代码添加到游戏核心,这通常是一个非常糟糕的主意.

  • 成就系统如何与拥有后来不必要信息的游戏核心相互作用?(见上面的例子)

  • 他们如何与游戏的核心分离?

我的例子可能看起来"无害",但想想目前在"魔兽世界"和同时在线的众多玩家中可获得的1000 多项成就.

optimization code-separation achievements

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

(基于文本)用于C++实践的游戏

我目前正在学习C++,所以我认为尝试(重新)编写一些"常见的"基于文本的游戏是一个好主意.(想到打猎Wumpus,猜猜计算机生成的(伪)随机数,...)

但是,我找不到任何这些任务的好来源.

  • 哪些基于文本的游戏可以"教育"我编程?
  • 你还记得你编程的特殊游戏(最好用C++编写),它教会了你很多东西吗?
  • 如果你能包括以下内容会很好:
    • 游戏的一般概念
    • 这个游戏需要/涉及的C++语言编程的哪些方面

c++

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

C字符串混乱

我现在正在学习C并且对字符数组 - 字符串感到困惑.

char name[15]="Fortran";
Run Code Online (Sandbox Code Playgroud)

没问题 - 它的数组可以容纳(最多?)15个字符

char name[]="Fortran";
Run Code Online (Sandbox Code Playgroud)

C计算我的字符数,所以我没有 - 整洁!

char* name;
Run Code Online (Sandbox Code Playgroud)

好的.现在怎么办?我所知道的是,这可以容纳后来分配的大量字符(例如:通过用户输入),但是

  • 为什么他们称之为char指针?我知道指针作为变量的引用
  • 这是"借口"吗?这是否找到除char*之外的任何其他用途?
  • 这究竟是什么?它是指针吗?你如何正确使用它?

提前谢谢,喇嘛

c string

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

C(++)对未存储在变量中的值有什么作用?

我对C和C++如何处理未存储在变量中的数据感到好奇,例如:

int IE6_Bugs = 12345;
int Win_Bugs = 56789;
Run Code Online (Sandbox Code Playgroud)

是的 - 一切都很清楚.IE6_Bugs将123456存储在其特定的内存地址中.

那怎么样..

if ( IE6_Bugs + Win_Bugs > 10000 )
{
  // ...
Run Code Online (Sandbox Code Playgroud)

因此,C抓取两个变量的值并添加它们,以便将结果与右侧的int进行比较.

但:

  • IE6_Bugs+Win_Bugs没有达到内存?或者处理器是否通过自己的缓存直接比较值?

  • 或者,在编译过程中,上面的if语句转换为机器更"可理解"的东西?(也许IE6_Bugs+Win_Bugs首先计算并将其存储在某个变量中,......)

c c++ memory compilation

15
推荐指数
2
解决办法
507
查看次数

如果不使用Rails,值得学习Ruby?

所以我几天前快速浏览了一下Ruby.起初,我对它所具有的一些功能感到非常惊讶,它们似乎让程序员的生活变得更轻松.(使用块,对象模型,......)

但是有一个大问题:没有人似乎没有使用Ruby而没有Rails!#Ruby(-lang)频道已经死了,人们只在#rails中说话

毫无疑问,我将坚持使用PHP进行Web开发

  • 实际上有人使用Ruby作为通用语言而不是Web开发吗?
  • 是否有"离线"应用程序的Ruby(好)库?
  • 这可能是主观的,但我应该坚持使用Python进行非网页脚本编写吗?

我不想学习Ruby,发现它的通用部分实际上已经死了!

最好的问候,喇嘛

ruby ruby-on-rails

13
推荐指数
4
解决办法
5093
查看次数

PHP:反洪水/垃圾邮件系统

我实际上正在开发一个PHP项目,它将具有用户系统(登录,注册,发送丢失的密码到电子邮件,......),我认为这可能非常容易受到暴力攻击和/或垃圾邮件的攻击(发送一个密码到某人的电子邮件,如1000次等,使用你的幻想).

  • 今天的网络服务器(Apache,IIS)是否有某种针对Brute-Force的内置防御?
  • 实施反垃圾邮件/洪水系统的最佳方式是什么,例如:我希望页面不能每分钟调用两次以上,但是另一页可能每分钟调用100次左右.

    • 我肯定要存储IP地址,他们上次访问某个页面的时间以及某个地方的访问次数 - 但它是否足够有效将其存储在文本文件/数据库(MySQL)中

    • 我应该使用验证码来注册/恢复丢失的密码吗?

    • "文本"验证码是否可行?(比如"什么是5加9减2?")

    • 该页面将不被那么多用户(100-200)使用,我实际上是否必须实现所有这些东西?

php security spam brute-force flooding

11
推荐指数
2
解决办法
4683
查看次数

在PHP中设计通用数据库接口

我正在为PHP中的Web项目创建一个小框架,所以我不必为每个新网站反复做基础工作.创建第二个CakePHP或Codeigniter并不是我的目标,我也不打算用任何可用的框架构建我的网站,因为我更喜欢使用我自己创建的东西.

当涉及核心结构,请求处理等部分时,我在设计和编码框架方面没有任何问题,但我已经陷入为我的模块设计数据库接口的困难.

我已经考虑过使用MVC模式,但发现对于我这个相当小的项目来说这会有点过分.

所以我面临的确切问题是我的框架模块(viewCustomers例如可能是一个模块)应该如何与数据库交互.

  • 将SQL直接混合到PHP代码中(仍然)是一个好主意吗?(将是"老路":) mysql_query( 'SELECT firstname, lastname(.....)

  • 我怎样才能抽象出如下的查询?

    SELECT firstname, lastname FROM customers WHERE id=X
    
    Run Code Online (Sandbox Code Playgroud)

MySQL的"助手"功能会不会像

$this->db->customers->getBy( 'id', $x );

是个好主意?

我不太确定,因为在处理更复杂的查询时,例如上面几乎无关紧要的查询,它们往往变得毫无用处.

  • MVC的"模型"模式是解决这个问题的唯一真正选择吗?

  • 您目前用什么来解决上面显示的问题?

php mysql design-patterns

11
推荐指数
3
解决办法
8209
查看次数

学习C++吧?

由于我过去一直主要使用脚本语言,但现在想要进入"高性能"级别,我决定不久前学习C++.

我查看了一些"初学者"教程,并购买了一本O'reilly C++口袋参考书(这真的很有帮助).我的问题是,我现在已经了解了所有的基础知识,但是我还不是很好的编程一个更复杂的游戏,例如,.

  • 我是否必须获得其中一本厚厚的C++书籍才能进一步学习?
  • 我将主要在Windows上使用C++.Win32旁边的哪些API对我很重要?
  • 我的目标是为我编写的一种编程语言编写一个小型解释器 - 我已经用几种脚本语言管理了这些语言,我需要用什么API /库知识来编写一种?

c++

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

Python OOP - 类关系

假设我有一个三个类的系统.在GameClass初始化时创建两个其他类的实例.

class FieldClass:
    def __init__( self ):
        return
    def AnswerAQuestion( self ):    
        return 42

class PlayerClass:
    def __init__( self ):
        return
    def DoMagicHere( self ):
        # Access "AnswerAQuestion" located in the "FieldClass" instance in "GameClass"
        pass

class GameClass:
    def __init__( self ):
        self.Field = FieldClass()
        self.Player = PlayerClass()
Run Code Online (Sandbox Code Playgroud)

什么是访问的最好的方式AnswerAQuestion()位于FieldClass距离的实例中PlayerClass

  • 我是否必须将FieldClass实例的引用传递给PlayerClass
  • 还有另一种更好的解决方法吗?执行上述操作将使我必须包含一个额外的变量PlayerClass来保存FieldClass实例.
  • 在Python中管理类关系有一种完全不同的方式吗?

python oop

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