小编bra*_*n56的帖子

为getchar()添加超时

我需要在程序中为getchar()添加一个超时函数.

我该怎么办,当我的程序到达指令getchar()时,它只会等待一段时间让用户进行击键,如果用户没有在给定的时间限制内进行击键,程序将"跳过"getchar()?

操作系统不支持conio.h库,因此kbhit不是一个选项.

c time timeout input getchar

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

Lua - 执行存储在表中的函数

我能够将函数存储到表中.但现在我不知道如何调用它们.最终表将有大约100个调用,所以如果可能的话,我想像在foreach循环中一样调用它们.谢谢!

以下是表的定义方式:

game_level_hints = game_level_hints or {}
game_level_hints.levels = {}
game_level_hints.levels["level0"] = function()
    return
    {
        [on_scene("scene0")] =
        {
            talk("hint0"),
            talk("hint1"),
            talk("hint2")
        },
        [on_scene("scene1")] =
        {
            talk("hint0"),
            talk("hint1"),
            talk("hint2")
        }
    }
end
Run Code Online (Sandbox Code Playgroud)

Aaand函数定义:

function on_scene(sceneId)
    -- some code
    return sceneId
end

function talk(areaId)
    -- some code
    return areaId
end
Run Code Online (Sandbox Code Playgroud)

编辑:

我修改了函数,因此它们会有更多的上下文.基本上,他们现在返回字符串.而我希望发生的是,在调用函数的最后,我将有一个包含所有这些字符串的表(理想情况下是level表).

lua function-pointers function lua-table

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

Android MediaPlayer音频会话ID是指什么?

正如标题所述,MediaPlayer对象音频会话ID是指什么?最初,我打算检索intMediaPlayer正在播放的音频资源的资源ID .但我找不到适合的方法.

但是,我偶然发现了这个方法getAudioSessionId(),我想知道这是否是我正在寻找的功能.

android android-mediaplayer android-resources

5
推荐指数
2
解决办法
7715
查看次数

C - 直接从键盘缓冲区读取

这是C编程语言中的一个问题.

如何直接读取键盘缓冲区中的数据?

我想直接访问数据并将其存储在变量中.变量应该是什么数据类型?

我需要它用于我们研究所正在开发的操作系统.它被称为ICS-OS,我不太确定具体细节.它运行在x86,32位机器上(我们在Linux机箱中的QEMU上运行).以下是Google Code http://code.google.com/p/ics-os/的链接.我希望这些信息足够充分.

操作系统不支持conio.h库,因此kbhit不是一个选项.

c keyboard buffer input

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

广播到多个客户端的MulticastSocket与DatagramSocket

当一个服务器向多个客户端广播时,哪个是更快/更高效的实现:MulticastSocket还是DatagramSocket?

请讨论一下解释,谢谢!

传递的消息涉及字符串和浮点数.

java networking broadcasting

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

检查Android MediaPlayer是否已初始化

如何检查MediaPlayer对象是否已初始化?是否有类似的东西:

MediaPlayer mp;
if(mp.isInitialized())
    Log.v("Test", "mp has been initialized. :D ");
else
    Log.v("Test", "mp is NOT yet initialized. :( ");
Run Code Online (Sandbox Code Playgroud)

当然,我检查了API文档,没有类似的方法,但是有没有类似的方法?

我正在考虑仅检查我的代码,并在引发错误Exception时捕获引发的错误,但是我觉得那很简单。:P

编辑:

我的代码旨在像这样进行:

MediaPlayer mp;

// Lorem ipsum dolor sit amet consectetur adipisicing...

if(mp.isInitialized)
{
    mp.stop();
}
Run Code Online (Sandbox Code Playgroud)

android initialization android-mediaplayer

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

在NSDictionary初始化中使用时,NSNumber变为nil

我有以下代码块:

NSNumber* dayNsNumber = [[NSNumber alloc] initWithInt:dayNumber+1];
NSLog(@"dayNsNumber: %d", [dayNsNumber intValue]);

if(boolVar){

    UIAlertView* success = [[UIAlertView alloc] initWithTitle:@"Title" message:[NSString stringWithFormat:@"Day %d!", dayNumber+1] delegate:self cancelButtonTitle:nil otherButtonTitles:@"Star", nil];
    [success show];
    NSLog(@"dayNsNumber: %d", [dayNsNumber intValue]);
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:
            dayNsNumber, "Day Number",
            [self getCurrentLocalDate], @"Date",
            [self getCurrentLocalTime], @"Time",
         nil];
}
Run Code Online (Sandbox Code Playgroud)

会发生什么事情,当我运行代码时,它会在初始化时挂起,params NSDictionary并说它dayNsNumber就是nil.

Xcode显示线程1:EXC_BAD_ACCESS(代码= 1).

我该如何解决这个问题?我想添加dayNsNumber到我的params字典中.

此外,这里是getCurrentLocalDategetCurrentLocalTime:

-(NSString*)getCurrentLocalDate;{ 
    NSString *formatString = [NSDateFormatter dateFormatFromTemplate:@"dd-MM-yyyy" options:0 locale:[NSLocale currentLocale]];
    NSDateFormatter *dateFormatter = …
Run Code Online (Sandbox Code Playgroud)

null objective-c nsdictionary nsnumber ios

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

在AndEngine中,在哪里调用实体更新方法?

我正在使用AndEngine,我采用了一个组件实体模型来开发我的游戏.我的问题是在AndEngine设置中,我应该在哪里以及如何调用我的实体(及其组件)的更新方法?

我两天前才开始使用AndEngine,所以请原谅我的任何小说.

java android updates andengine

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