小编Sal*_*ara的帖子

使用或切换语句

我正在创建一个控制台应用程序并使用switch语句来创建一个简单的菜单系统.用户输入采用单个字符的形式,在屏幕上显示为大写字母.但是,我确实希望程序接受小写和大写字符.

我理解switch语句用于比较常量,但有可能做类似下面的事情吗?

switch(menuChoice) {
    case ('q' || 'Q'):
        //Some code
        break;
    case ('s' || 'S'):
        //More code
        break;
    default:
        break;
}
Run Code Online (Sandbox Code Playgroud)

如果无法做到这一点,是否有解决方法?我真的不想重复代码.

c++ switch-statement conditional-statements or-operator

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

汇编语言 - 不止一种类型?

我在几周内开始上大学(软件工程学位),并且知道我将在第一年学习的其中一个模块是"建筑学基础"或类似的东西; 基本上它正在学习用'汇编'编程.

我想做一些背景学习,所以我已经做好了准备(我在其他一些单元上做了同样的事情),但不知道是否有多种"汇编语言".那里有多少?它是每个制造商一个,32位和64位语言,还是只有一个标准?

如果有多种类型,那么在大学阶段最受欢迎或可能被教授的是什么?

assembly

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

更优雅的方法来检查C++数组中的重复项?

我在C++中编写此代码作为uni任务的一部分,我需要确保数组中没有重复项:

// Check for duplicate numbers in user inputted data
    int i; // Need to declare i here so that it can be accessed by the 'inner' loop that starts on line 21
    for(i = 0;i < 6; i++) { // Check each other number in the array
        for(int j = i; j < 6; j++) { // Check the rest of the numbers
            if(j != i) { // Makes sure don't check number against itself
                if(userNumbers[i] == userNumbers[j]) { …
Run Code Online (Sandbox Code Playgroud)

c++ arrays duplicates

16
推荐指数
6
解决办法
7万
查看次数

PHP define()似乎没有使用include()

我一直在尝试使用OO PHP,目前有三个文件.我有一个class_lib.php,目前只有一个databaseServer类,一个index.php文件和一个definitions.php文件.我想将所有敏感数据库信息放入定义文件中.但是,当我这样做时,我在尝试连接数据库时遇到错误:"Unkown server DB_HOST".我的定义文件是:

<?php
define("DB_HOST","localhost");
define("DB_USER","root");
define("DB_PASS","password");
define("DB_NAME","database");
?>
Run Code Online (Sandbox Code Playgroud)

然后我在索引文件中使用它们,如下所示:

include('definitions.php');
include('class_lib.php');

$testing = new databaseServer();

$testing->connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
Run Code Online (Sandbox Code Playgroud)

我在databaseServer类中使用的函数是这样的:

    function connect($host,$user,$pw,$db) {
        $this->con = mysql_connect($host,$user,$pw);
        if (!$this->con) {
            die('Could not connect: ' . mysql_error());
            }
        $this->selectDb($db);
        }

    function selectDb($database) {
        $this->db = mysql_select_db($database,$this->con);
        if (!$this->db) {
            echo "Could not Select database: " . mysql_error();
            }
        }
Run Code Online (Sandbox Code Playgroud)

任何想法为什么这不起作用?我也尝试将定义文件放入class_lib文件中的include中,但它仍然不起作用.

php class include

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

我应该为游戏使用多个课吗?

我正在考虑在PHP中创建一个基于文本的RPG类型程序作为假日项目,并有机会了解有关PHP和OOP的更多信息.(也许不是语言的最佳选择,我知道,但我不想在与OOP同时从头开始学习另一种语言.)

无论如何,我只是开始设计过程并思考'怪物'.每个怪物类型(你知道,兽人,地精,老鼠等)将拥有自己的统计数据,技能和不具备的数据.起初我虽然我可以只有一个怪物类,并在实例化对象时设置属性.但后来我觉得这可能有点低效,所以我正在考虑为每种类型的怪物准备一个课程.

考虑到每个类中的方法可能是相同的,这是解决问题的最佳方法吗?做一些我还不知道的更好的方法吗?

任何帮助表示赞赏.

php oop class

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

在mySQL数据库中检查现有用户的最佳方法是什么?

我试图在PHP中创建用户登录/创建脚本,并想知道在创建用户时检查用户名是否存在的最佳方法.目前,我有以下代码:

function createUser($uname,$pword) {
        $server->connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
        $this->users = $server->query("SELECT * FROM user_list");
        while ($check = mysql_fetch_array($this->users) {
            if ($check['uname'] == $uname) {
Run Code Online (Sandbox Code Playgroud)

我不确定的是这样做的最佳逻辑.我想添加一个布尔变量来做类似的事情(在if语句之后):

$boolean = true;
}
if ($boolean) {
    echo "User already exists!";
    }
else {
    $server->query("INSERT USER INTO TABLE");
    echo "User added Successfully";
    }
Run Code Online (Sandbox Code Playgroud)

但这似乎有点低效 - 是否有更有效的方法来做到这一点?对不起,如果这有一个基本的解决方案 - 我是一个相对较新的PHP程序员.

php mysql

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

更优雅的方式添加百分比?

我想知道是否有更优雅的方式来增加一个百分比.例如,如果我想将12%$a的值添加到$a我正在做的事情中:

$a = 100;
$a = $a + (($a / 100) * 12);
Run Code Online (Sandbox Code Playgroud)

112当然,这让我成为新的价值.但我不禁觉得这有点过于冗长,必须有更好的方法来增加百分比.

我试过了:

$a = $a + 12%;
Run Code Online (Sandbox Code Playgroud)

但是,正如预期的那样,这不起作用.在我考虑自己编写函数以使其更容易之前,是否有预先存在的方法来执行此操作?

php math

4
推荐指数
3
解决办法
9192
查看次数

更简单的方法来检查碰撞?

我正在为uni工作,我必须使用C#Win Forms在Visual Studio 2010中创建一个Breakout游戏.目前,我正专注于只有一块砖被摧毁,所以我在扩展它之前先让机械装置停下来.

澄清我当前的程序:我使用图片框作为Graphics对象和计时器来创建动画效果.球可以在每个帧上跳过1到10个像素 - 这是为球创建随机起始矢量的一部分.

这可以正常工作,直到检查球是否"击中"我绘制的砖块.我所拥有的是一个if语句,用于检查球是否位于图片框中与砖块轮廓相对应的任何坐标上.我知道逻辑很好,因为它在某些时候有效.但是,由于球的位置"跳跃"的变化,我需要在if语句中添加+/- 5像素的缓冲区.

这就是出现问题的地方,因为我的if声明(两个,真的)真的很复杂,因为它是:

// Checks if ball hits left side or top of brick
if (((x >= brickX) && (x <= (brickX + 50)) && (y == brickY)) ||
    ((y >= brickY) && (y <= (brickY + 20)) && (x == brickX)))
{
    brickHit = true;
}
// Check if ball hits right side or bottom of brick
else if ((((x >= brickX) && (x <= brickX + 50)) …
Run Code Online (Sandbox Code Playgroud)

c# if-statement winforms

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

左旋转的数学等价物是什么?

我试图破解一些涉及8位二进制数上多次左旋转的汇编代码.

供参考,代码是:

lab:    rol    dl,1
        rol    dl,1
        dec    ecx
        jnz    lab
Run Code Online (Sandbox Code Playgroud)

decjnz是不是一个问题,而是有没有表明,2个rols的多次执行.

我想要做的是找出这个代码的数学等价物,例如公式.我当然不是在寻找一个完整的公式来告诉我整个代码,但我想知道是否有一个公式给出了单个左旋转的等价(以denary为单位).

我试过用几个不同的数字来解决这个问题,但是看不到两个结果之间的联系.例如:如果起始编号为115,则表示为220,但如果起始编号为99,则表示为216.

algorithm assembly rotation

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

VisualStudio中的Windows GUI应用程序

在VS 2010中使用GUI编写(希望本机)C++应用程序的有效方法是什么?

我记得大约10年前我使用过MFC,今天有什么重大变化吗?

c++ windows user-interface visual-studio-2010

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