小编evo*_*evo的帖子

如何正确安全地使用sscanf

首先,关于使用的其他问题sscanf不回答我的问题,因为常见的答案是根本不sscanf使用fgets或使用或getch替代,这在我的情况下是不可能的.

问题是我的C教授要我scanf在一个程序中使用.这是一个要求.但是程序也必须处理所有不正确的输入.

程序必须读取整数数组.以什么格式提供数组的整数并不重要.为了使任务更容易,程序可能首先读取数组的大小,然后读取每行中的整数.

程序必须处理这些输入(并适当地报告错误):

  1. 999999999999999 ... 9(数字大于整数)
  2. 12a3(不要将其读作整数12)
  3. a ... z(字符串)
  4. 11 aa 22 33 \n所有在一行(这可能通过丢弃11之后的所有内容来处理)
  5. 输入大于输入数组

可能有更多不正确的案例,这是我能想到的唯一案例.

如果提供了错误输入,程序必须要求用户再次输入,直到给出正确的输入,但必须保留先前正确的输入(只有输入流中必须清除不正确的输入).

一切都必须符合C99标准.

c scanf

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

Tasm找不到包含文件

在我的program.asm包含tasm指令的I include文件中

include "file.asm"
Run Code Online (Sandbox Code Playgroud)

但是我收到错误"无法找到文件file.asm".该文件与源代码D:\ source位于同一目录中.Tasm在目录中D:\tasm.我试图TASM.CFGtasm/bin该行的目录中创建文件,/iD:\source但没有帮助.我也试图file.asm进入tasm/bin目录,这也没有帮助.我还尝试在include指令中指定完整路径

include "D:\source\file.asm"
Run Code Online (Sandbox Code Playgroud)

这也没有帮助.

assembly tasm

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

如何在DDD中实现分页?

我有用户和组.每个用户可以拥有任意数量的组.我希望以分页形式显示用户组,一次显示n个组.我知道如何实现普通的分页,但是我不知道如何将它集成到我的域驱动设计中(以后不会导致代码重复).我希望它能像这样工作:

$adapter = new DatabaseAdapter(...);
$userRepository = new UserRepository($adapter);
$user = $userRepository->fetchById(1);
$groups = $user->getGroups()->getRange($offset, $limit);
Run Code Online (Sandbox Code Playgroud)

和其他域实体相同:

$projects = $user->getProjects()->getRange($offset, $limit);
...
Run Code Online (Sandbox Code Playgroud)

简化,我的代码如下所示:

class Group
{
    private $_id;
    private $_name;

    public function __construct($id, $name) {
        $this->setId($id);
        $this->setName($name);
    }

    public function setId() {
        $this->_id = $id;
    }

    public function getId() {
        return $this->_id;
    }

    public function setName($name) {
        $this->_name = $name
    }

    public function getName() {
        return $this->_name;
    }
}

class Groups
{
    private $_elements = array();

    public function …
Run Code Online (Sandbox Code Playgroud)

php domain-driven-design

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

如何命名我的课程?

我有一个基本用户类,负责操作基本用户信息:名称,年龄,位置等.我想用组功能扩展我的系统,稍后用项目和会议扩展我的系统.例如:

class User
{
    public function getName() {
        ...
    }

    public function getAge() {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

然后使用组功能扩展它:

class GroupableUser extends User
{
    public function join($groupId) {
        ...
    }

    public function leave($groupId) {

    }

    public function requestGroupInvitation($groupId) {
        ...
    }

    public function acceptGroupInvitation($groupId) {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

GroupableUser这个名字对我来说似乎很奇怪,但是将连接和离开方法添加到Group类是没有意义的,因为它的用户加入并离开了一个组,而不是相反.

后来我会有像UserThatCanHaveProjectsUserThatCanParticipateInMeetings这样的课程.如何命名这些类?

你通常如何处理这些情况?

php oop

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

什么是sp等于从远程过程返回指令ret

具体地说,在8086汇编中,如果SS = AC8D且SP = 7A75,则在从具有ret(指令代码CB)的远程过程的调用返回之后,什么SP将是相等的.没有提供其他信息.

assembly

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

标签 统计

assembly ×2

php ×2

c ×1

domain-driven-design ×1

oop ×1

scanf ×1

tasm ×1