小编pws*_*seo的帖子

C主循环没有100%cpu

#include <stdio.h>

int main() {
  while(!DONE) {
    /* check for stuff */
  }
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

上面的代码示例使用100%cpu直到DONE为真.如何实现一个循环的程序,只在DONE时终止,但不使用100%cpu?现代语言使用像App.ProcessMessages之类的东西来让操作系统暂时控制,然后返回循环.

我是C的新手,显然......使用最新的GCC,linux和windows(便携式解决方案会很棒!)

c program-entry-point loops

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

Perl的tr ///没有做我想要的

编辑:TR ///不支持变量插值,所以我去了s/\Q$_\E//g;,而不是

或者,更有可能的是,我没有做正确的事......

我有以下代码:

#!/usr/bin/perl

use strict;
use warnings;
use utf8;

sub strip_invalid {
  my ($str, @chars) = @_;

  map { $str =~ tr/$_//; } @chars;

  return $str;
}

my @invalid = qw( a e i o u );

print strip_invalid("This is the super sample with vowels.\n", @invalid);
Run Code Online (Sandbox Code Playgroud)

我只想传递一个字符串strip_invalid()并通过一个tr///删除字符...我哪里出错了?(顺便说一句,使用正则表达式,它的工作原理).@invalidmap

perl functional-programming map transliteration

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