问题列表 - 第36588页

如何检查当前的操作系统是Windows,Linux还是OSX?

我正在编写一个编译器项目,它将生成汇编代码作为目标语言.但是,根据操作系统的不同,需要考虑一些小的变化,我不知道如何检查操作系统.如果重要,我只关心32位.我在一些源代码中看到过类似的东西

#ifdef WIN32
Run Code Online (Sandbox Code Playgroud)

但我不知道这是如何工作的.

编辑:一些澄清.我在所有三个平台上都使用gcc.我不知道在每个平台中是否通过gcc定义了像WIN32这样的宏.如果是这样,这些常数似乎解决了我的问题.

linux windows macos porting

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

如何在悬停时更改按钮的颜色?

我需要在悬停时更改按钮的颜色.

这是我的解决方案,但它不起作用.

a.button {
   display: -moz-inline-stack;
   display: inline-block;
   width: 391px;
   height: 62px;
   background: url("img/btncolor.png") no-repeat;
   line-height: 62px;
   vertical-align: text-middle;
   text-align: center;
   color: #ebe6eb;
   font-family: Zenhei;
   font-size: 39px;
   font-weight: normal;
   font-style: normal;
   text-shadow: #222222 1px 1px 0;
}
a.button a:hover{
     background: #383;
}
Run Code Online (Sandbox Code Playgroud)

css button hover

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

定期刷新页面上的图像

我正在构建一个页面来显示一堆网络摄像头图像并定期更新它们,以便该页面可用于一目了然的监控.但是,我遇到了定期重新加载工作的问题.我的代码看起来像:

<div class='cameras'> 
    <div class='camera'> 
      <h4>Desk</h4> 
      <img height='240' src='http://somehost/cameras/cam0/lastsnap.jpg' width='320'> 
    </div> 
    <div class='camera'> 
      <h4>Main Room</h4> 
      <img height='240' src='http://somehost/cameras/cam1/lastsnap.jpg' width='320'> 
    </div> 
    <div class='camera'> 
      <h4>Studio</h4> 
      <img height='240' src='http://somehost/cameras/cam2/lastsnap.jpg' width='320'> 
    </div> 
  </div> 
Run Code Online (Sandbox Code Playgroud)

理想情况下,我希望每隔几秒钟从指定的URL重新加载这些内容,而不必为每个摄像头生成单独的JS.我已经使用了jQuery来处理其他一些零碎的东西,所以坚持下去会很棒 - 然后,一个普通的JS解决方案也很好.

任何想法,StackOverflow JS众神?

javascript jquery image unobtrusive-javascript

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

General :: ivar:...不是有效变量

我一直试图破译这个输出意味着什么,但我似乎无法弄明白.有谁知道这里发生了什么?

替代文字

我甚至尝试逐行运行这些行,只有在执行最后一行(show)时才会显示错误.

wolfram-mathematica

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

C++将float转换为unsigned char?

我是C++的新手,并且做了一些我认为sprintf可以完成这项工作的谷歌搜索,但是在编译时我得到一个错误,我无法在a unsigned char和a 之间进行转换char.我需要一个unsigned char,因为我打算打印到图像文件(0-255 RGB).

unsigned char*** pixels = new unsigned char**[SIZE];
vector<float> pixelColors;

...

sprintf(pixels[i][j][k], "%.4g", pixelColors.at(k));
Run Code Online (Sandbox Code Playgroud)

(pixelColors的大小为3,'k'指的是'for循环'变量)

c++ floating-point unsigned-char

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

C程序可以修改其可执行文件吗?

我手上有点太多时间,开始想知道我是否可以写一个自修改程序.为此,我在C中编写了一个"Hello World",然后使用十六进制编辑器在已编译的可执行文件中查找"Hello World"字符串的位置.是否可以修改此程序以打开自身并覆盖"Hello World"字符串?

char* str = "Hello World\n";

int main(int argc, char* argv) {

  printf(str);

  FILE * file = fopen(argv, "r+");

  fseek(file, 0x1000, SEEK_SET);
  fputs("Goodbyewrld\n", file);      
  fclose(file);    

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

这不起作用,我假设有一些东西阻止它打开自己,因为我可以将它分成两个单独的程序(一个"Hello World"和一些修改它),它工作正常.

编辑:我的理解是,当程序运行时,它被完全加载到ram中.因此,对于所有意图和目的,硬盘驱动器上的可执行文件是一个副本.为什么修改自己会有问题?

有解决方法吗?

谢谢

c metaprogramming self-modifying

22
推荐指数
2
解决办法
9549
查看次数

我应该使用Perl的条件吗?:operator是一个switch/case语句,还是代替elsif?

Perl有一个条件运算符,它与C的条件运算符相同.

要刷新,C和Perl中的条件运算符是:

(test) ? (if test was true) : (if test was false)
Run Code Online (Sandbox Code Playgroud)

如果与左值一起使用,您可以使用一个动作进行分配和测试:

my $x=  $n==0 ? "n is 0" : "n is not 0";
Run Code Online (Sandbox Code Playgroud)

我正在阅读伊戈尔·奥斯特罗夫斯基(Igor Ostrovsky)的博客,以一种简洁的方式来表达基于C语言的多语句if语句,并且意识到这在Perl中确实是一种"巧妙的方式".

例如:(编辑:使用Jonathan Leffler更易读的形式......)

# ternary conditional form of if / elsif construct:
my $s=
      $n == 0     ? "$n ain't squawt"
    : $n == 1     ? "$n is not a lot"
    : $n < 100    ? "$n is more than 1..."
    : $n < 1000   ? "$n …
Run Code Online (Sandbox Code Playgroud)

syntax perl conditional

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

将多个字节转换为C中的文件大小

我想将单个字节数转换为文件大小(具有.KB,.MB和.GB).

如果数字是0,我不想有任何单位.如果数字可以被1024的倍数(不是浮点数)整除,那么我将打印:x.否则,我想打印一度精度的浮点.

我制作了一些似乎运行良好的代码,但它非常繁琐.我正在研究如何使我的功能更清洁/更高效,请说实话,非常难看:

char *
calculateSize( off_t size )
{
  char *result = (char *) malloc(sizeof(char) * 20);
  static int GB = 1024 * 1024 * 1024;
  static int MB = 1024 * 1024;
  static int KB = 1024;
  if (size >= GB) {
    if (size % GB == 0)
      sprintf(result, "%d GB", size / GB);
    else
      sprintf(result, "%.1f GB", (float) size / GB);
  }
  else if (size >= MB) {
    if (size % MB == 0)
      sprintf(result, "%d MB", …
Run Code Online (Sandbox Code Playgroud)

c size

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

T-sql Cursor,如果出现错误会发生什么?

如果在以下期间发生错误将会发生什么:

  1. 声明游标
  2. 获取数据

如果在光标关闭之前发生错误会发生什么?它会自动关闭吗?

当我使用游标时,处理错误的最佳做法是什么?

t-sql sql-server

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

获取两个元素之间的所有html

问题:
提取两个标题之间的所有 html,包括标题 html。标题文本是已知的,但不知道格式、标签名称等。它们不在同一个父级中,并且可能(嗯,几乎可以肯定)在它自己的子级中有子子级)。

澄清一下:标头可以在<h1>or<div>或任何其他标签内。它们也可以被包围<b><i><font>或者更多<div>的标签。关键是:元素中唯一的文本是标题文本。

我可用的工具是:使用 WebBrowser 控件的 C# 3.0 或 Jquery/Js。

我采用了 Jquery 路线,遍历了 DOM,但我遇到了儿童问题并适当地添加了它们。这是到目前为止的代码:

function getAllBetween(firstEl,lastEl) {
    var collection = new Array(); // Collection of Elements
    var fefound =false;
    $('body').find('*').each(function(){
        var curEl = $(this);
        if($(curEl).text() == firstEl) 
            fefound=true;
        if($(curEl).text() == lastEl) 
            return false;

        // need something to add children children
        // otherwise we get <table></table><tbody></tbody><tr></tr> etc
        if (fefound)
            collection.push(curEl);
    });
    var div = document.createElement("DIV");
    for (var …
Run Code Online (Sandbox Code Playgroud)

javascript jquery c#-3.0

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