小编Zon*_*ong的帖子

Postfix堆栈计算器

我为我的Java类创建了一个堆栈计算器来解决方程式

2 + ( 2 * ( 10 – 4 ) / ( ( 4 * 2 / ( 3 + 4) ) + 2 ) – 9 )
2 + { 2 * ( 10 – 4 ) / [ { 4 * 2 / ( 3 + 4) } + 2 ] – 9 }
Run Code Online (Sandbox Code Playgroud)

我们假设要{ } [ ]在我们的代码中实现.我只用括号做了.它只用100%工作( ).当我尝试添加时{ } [ ],它会变成香蕉.

这是我到目前为止:

package stackscalc;

import java.util.Scanner;
import java.util.Stack;
import java.util.EmptyStackException; …
Run Code Online (Sandbox Code Playgroud)

java stack calculator postfix-notation

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

GDB 回溯不显示函数名称

我在 SunOS 5.10 上编译了我的库(特别是protbuf-2.3.0) 。-g -O0

make 日志中的示例行如下:

/bin/bash ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..    -D_REENTRANT -pthreads -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare  -g -O0 -MT text_format.lo -MD -MP -MF .deps/text_format.Tpo -c -o text_format.lo `test -f 'google/protobuf/text_format.cc' || echo './'`google/protobuf/text_format.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -D_REENTRANT -pthreads -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -g -O0 -MT text_format.lo -MD -MP -MF .deps/text_format.Tpo -c google/protobuf/text_format.cc  -fPIC -DPIC -o .libs/text_format.o
Run Code Online (Sandbox Code Playgroud)

然后,我使用以下步骤附加了我的 gdb:

  1. 运行我的应用程序(在本例中,我的 Web 服务器启动一个 Java Web 应用程序,该应用程序在启动期间通过 jni 使用库)。
  2. gdb -p …

gdb function names backtrace

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

国际象棋位板人口

在某些位板国际象棋引擎中,棋子位板初始化如下:

white_pawns = 0x000000000000ff00
black_pawns = 0x00ff000000000000
white_knights = 0x000000000000042
black_knights = 0x4200000000000000
white_bishops =0x000000000000024
black_bishops = 0x2400000000000000
white_rooks = 0x000000000000081
black_rooks = 0x8100000000000000
white_queens = 0x0000000000000008
black_queens = 0x0800000000000000
white_king = 0x0000000000000010
black_king = 0x1000000000000000
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下这些片段如何获得各自的十六进制值吗?

hex chess bitboard

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

使用ref关键字传递值

在阅读关于ref关键字的MSDN文章后,我对使用ref关键字传递值类型时C#的作用感到困惑.文档指出ValueTypes没有装箱.我的问题是C#如何处理传递值类型作为引用?它是否将一些副本传递给堆栈上分配的数据?谢谢.

c# parameters ref

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

你能解释一下这个GC日志消息吗?

2013-12-15T22:52:05.154-0500:1.078:[全GC(系统)[PSYoungGen:1600K-> 0K(27776K)] [PSOldGen:0K-> 1502K(63360K)] 1600K-> 1502K(91136K)[ PSPermGen:9139K-> 9139K(65536K)],0.0282750秒] [时间:用户= 0.03 sys = 0.00,实际= 0.03秒]

以上是日志文件中的日志片段.我通过添加jvm参数得到了日志,如下所示.

-Xloggc:/tmp/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps
Run Code Online (Sandbox Code Playgroud)

现在我想知道是什么意思

[PSOldGen:0K-> 1502K(63360K)] 1600K-> 1502K(91136K)

怎么会发生?

java logging garbage-collection

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

如何获取回收站的路径?

我想获取回收站的路径。我在网上搜索发现有人使用shell32并获取回收站中的文件列表。但是,我只想获取回收站的路径,因为我的目的是在将 IncludeSubdirectories 设置为 true 时从文件监视程序中排除监视器回收站。使用shell32获取文件列表的代码如下所示,但我不知道如何获取回收站的路径。

Shell Shl = new Shell();
Folder Recycler = Shl.NameSpace(10);
for (int i = 0; i < Recycler.Items().Count; i++)
{
    FolderItem FI = Recycler.Items().Item(i);
    string FileName = Recycler.GetDetailsOf(FI, 0);
    if (Path.GetExtension(FileName) == "") FileName += Path.GetExtension(FI.Path);
    string FilePath = Recycler.GetDetailsOf(FI, 1);
    Console.WriteLine(FilePath);
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

c# recycle-bin

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

在Android应用程序中始终在听的语音识别

我正在尝试为我的应用程序添加一些语音识别,这种语音识别始终在聆听(就像服务一样).我希望它在识别某些说出的单词时执行不同的操作,即:"总时间","最大速度"等会触发在我的应用程序中执行某些操作的事件.

到目前为止,我只能找到将语音识别添加到活动中.我可以把这个活动放在应用程序活动的顶部,但我宁愿不这样做.而且,我不确定它是否总是会听我想要的.我不想按下按钮来关闭语音识别监听器.我希望能够将手机放在口袋里,通过耳机上的麦克风讲话,让它按照我说的做.我不得不说"Ok Google"这样的东西让它开始听命令,但是如果它已经在听它了,我不能只是听它的应用命令吗?

android voice-recognition android-intent

5
推荐指数
0
解决办法
9371
查看次数

使用boost :: file_mapping时如何强制页面文件扩展

在我目前的遗传算法中,我正在迭代几个相当大的文件.现在我boost::file_mapping用来访问这些数据.

我有3个不同的测试用例我可以启动该程序:(我的电脑有8GB RAM,Windows 8.1,我在页面文件限制上的不同尝试,请阅读下面)

  1. 1000个文件,大小约4MB,总共4 GB.这种情况下,首先执行有点迟缓,但从第二次迭代开始,memoryaccess不再是瓶颈,速度完全受我的CPU限制.

  2. 1000个文件,大小约6MB,总共6 GB.这是一个完全不同的场景......第一次迭代按比例缓慢,但即使在迭代之后也不会加速.我实际上已经考虑过尝试将4 GB加载到我的内存并保留2 GB映射...不确定这实际上是否有效,但它可能值得测试......但即使这样可行,但这对案例无济于事C)...

  3. 1000个文件,大小约13 MB,因此总共13 GB.这完全没有希望.第一次迭代非常慢(考虑到数据量,这是可以理解的),但即使是进一步的迭代也没有显示出速度提升的迹象.甚至对内存的部分负载在这里也无济于事.

现在我尝试了页面文件限制的各种设置:

  1. 由Win管理 - pagefil的大小停在5-5.2 GB左右......永远不会变大.这显然对情况b)和c)没有帮助,并且实际上导致文件循环...(如果至少前4 GB将保留,它实际上是有帮助的,因为它现在是,基本上什么都没有被重用来自页面文件)

  2. manual:min 1 GB,max 32 GB:页面文件不会超过4.5GB

  3. 手动:最小16GB,最大32 GB:如果你自己没有尝试过这个...不要这样做.这使得启动几乎不可能,并且任何事情都不会顺利进行......是的,我没有用这个测试我的程序,因为这是不可接受的.

所以,我正在寻找的是告诉我的Windows的一些方法,当使用页面文件设置1)或2)时,我真的非常想在我的程序中使用非常大的页面文件.但我不希望我的计算机完全在页面文件上运行(因为它基本上发生在3))有什么办法可以强迫这个吗?

或者有没有其他方法如何以某种方式正确加载数据,以便至少从第二次迭代开始快速完成访问?数据只包含大量的64位整数,这些整数由我的算法进行检测(每200-300个int之间有一堆格式化符号),所以我只需要读访问权限.

如果需要信息,我正在使用VS Pro 2013.代码的可移植性不是问题,它只需要在我的笔记本上运行.当然它是64位应用程序,我的处理器支持;)

c++ windows performance boost c++11

5
推荐指数
0
解决办法
263
查看次数

Sass mixin变量参数错误

使用变量参数时,我遇到了一个不一致的错误.

项目中有一些mixin接受变量参数.其中之一是;

@mixin box-shadow($shadows...) {
  -moz-box-shadow: $shadows;
  -webkit-box-shadow: $shadows;
  box-shadow: $shadows;
}
Run Code Online (Sandbox Code Playgroud)

如您所见,它接受变量参数.除了我工作地点的几台机器外,这种方法都可以正常工作.

在它不工作的机器上,我们得到以下错误;

"... x-shadow($ args":expected")"之后的CSS无效,是"......"{"

我们都运行相同版本的SASS,Sass 3.3.7(Maptastic Maple)

除SASS版本之外还有什么可能导致错误吗?在尝试解决此问题时,我们都使用完全相同的代码库.

css sass mixins

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

从Busybox启动Linux(pivot_root或switch_root或?)

在beaglebone硬件上,我想从一个带有极简busybox系统(/ dev / mmcblk0p2)的分区开始,在另外2个分区(/ dev / mmcblk0p5和/ dev / mmcblk0p6)上运行一些检查,其中包含更完整的Linux系统(Angström) ),然后根据这些测试在2个Linux系统中的一个或另一个上启动。

问题是我找不到从busybox正确启动另一个系统的方法。

我做了什么:

从(正常运行)busybox系统中:

export PATH=/bin:/sbin:/usr/bin:/usr/sbin
mount -t sysfs sysfs /sys
mkdir -p /dev/pts
mount -t devpts devpts /dev/pts
mount /dev/mmcblk0p5 /mnt/root
Run Code Online (Sandbox Code Playgroud)

然后我尝试了两种方法:

  1. ivot_root

    cd /mnt/root
    pivot_root . ./initrd    
    ./bin/mount -n --move ./initrd/sys ./sys      
    ./bin/mount -n --move ./initrd/proc ./proc
    ./bin/mount -t devtmpfs none ./dev
    ./bin/mount -n --move ./initrd/dev/pts ./dev/pts          
    exec ./usr/sbin/chroot . ./sbin/init < ./dev/ttyO0 > ./dev/ttyO0 2>&1
    
    Run Code Online (Sandbox Code Playgroud)

    这给出了以下错误:

    Couldn't find an alternative telinit implementation to spawn.
    
    Run Code Online (Sandbox Code Playgroud)

    然后,它会启动一个新的Angström登录提示,但是登录后,任何对“ init”的调用都会返回上面的错误,并且系统无法正常工作(例如,如果我调用“ reboot”,它将失败;如果我调用“ …

linux init busybox systemd

5
推荐指数
0
解决办法
4651
查看次数