小编kmo*_*ort的帖子

Unix纪元和GPS纪元之间的嘀嗒声

Unix时代(1970年1月1日)和GPS时代(1980年1月6日)之间的一秒钟滴数是多少?

我在网上看到了多个来源的多个答案.一个阵营声称答案是315964800,另一个阵营声称是315964819.我一直认为它是315964800,但现在不太确定.

我刚刚发现我的软件基线在过去的八年里一直在使用315964819.我很难理解当我们将嵌入式设备与其他设备集成时,如何关闭19秒并没有人注意到它.

我认为将315964819放入代码基线的人必须错误地使用TAI偏移(19秒).

根据我的理解,Unix时间不包括闰秒,这表明315964800是两个时期之间的滴答数.然后我想一想Unix时间如何处理闰秒.它只是重复滴答计数时,有第二插入一个飞跃,而且 1970年和1980年之间插入19闰秒......我开始怀疑,如果重复的事情蜱.我不这么认为,但是这段代码的历史中有人这么认为,而且似乎有效......

它的长短是因为我将要在这个产品的黑暗时代改变一个恒定的设置,这与时间有关,这对于平台来说非常重要,从它的内容到我认为更准确的时间,以及我想从比我更知识渊博的人那里得到一些赞许.

有人权威请介入吗?

315964800营地

315964819营地

另请注意,我只是询问有关GPS纪元的Unix纪元.我很确定我们已经有闰秒,因为GPS纪元适当地覆盖了.

time gps utc unix-timestamp

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

Android使用什么文件系统?

Android使用哪个文件系统?我读过ext4和YAFFS2.

android ext4

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

为什么在结构中打包单个枚举?

这是由离开公司的人写的.我看不出有任何理由这样做,我很好奇我是否有遗漏的东西.

enum thing_type_e
{
   OPTION_A = 0,
   OPTION_B,
   OPTION_C,
   OPTION_D
};

struct thing_type_data_s
{
   enum_type_e mVariable;
};
Run Code Online (Sandbox Code Playgroud)

我认为他可能会在结构中添加更多内容,但在查看它是如何使用后,我不这么认为.

除非"他要为结构添加更多内容",为什么要在结构中打包单个枚举?我有没有想到的动机?

更新:

正如评论中所说,他以这种方式使用它:

void process_thing_type(thing_type_data_s* ParamVariable)
{
    local_variable = ParamVariable->mVariable;
    ...
}
Run Code Online (Sandbox Code Playgroud)

这最初是用GCC 3.3.5构建的,如果它有任何区别的话.

c c++ enums struct

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

PostgreSQL GROUP BY LOWER()无法正常工作

我正在尝试GROUP BY在PostgreSQL 9.4.1中使用,但没有获得我希望的成功。

几个人网上声称这应该工作,但我不能得到相同的结果。我想要的是不区分大小写的,GROUP BY但每次添加时LOWER()都会抱怨:

错误:“ people.fn”列必须出现在GROUP BY子句中或在聚合函数中使用

CREATE DATABASE TEST;
CREATE TABLE people (id INTEGER, fn TEXT, ln TEXT); /* ID, firstname, lastname */

INSERT INTO people (id, fn, ln) VALUES(1,'Mike','f');
INSERT INTO people (id, fn, ln) VALUES(2,'adam','b');
INSERT INTO people (id, fn, ln) VALUES(3,'bill','b');
INSERT INTO people (id, fn, ln) VALUES(4,'Bill','r');
INSERT INTO people (id, fn, ln) VALUES(5,'mike','d');
INSERT INTO people (id, fn, ln) VALUES(6,'mike','c');
INSERT INTO people …
Run Code Online (Sandbox Code Playgroud)

sql postgresql group-by

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

JProgressBar在不可见时不占用空间

我希望能够隐藏JProgressBar并使其所在的面板不会改变大小.

目前,当我将进度条设置为visible(via pb.setVisible(true))时,我得到如下布局:

进度条可见

然后,当我将其设置为不可见时,我得到以下布局:

进度条不可见

  • 显然强制JPanel是一个特定的大小并没有帮助.
  • 在JProgressBar上设置显式大小似乎没有帮助.
  • 使用NetBean的GUI编辑器中的垂直间隙进行修改似乎没有帮助(我将其设置为固定大小).

我想我在这里很容易丢失一些东西,我看不出它是什么.

如何强制隐藏的JProgressBar仍然占用房地产(特别是垂直房地产)?

代码在下面,因为它的价值.我对错过的概念比代码的细节更感兴趣.:-)

package pbtest;

public class MyFrame extends javax.swing.JFrame {

public MyFrame() {
    initComponents();
}

/**
 * This method is called from within the constructor to initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is always
 * regenerated by the Form Editor.
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    jPanel1 = new javax.swing.JPanel();
    pb = new javax.swing.JProgressBar();
    bnVis = …
Run Code Online (Sandbox Code Playgroud)

java swing jprogressbar

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

SimpleDateFormat增加7个小时?

我正在尝试简单地减去日期并获得奇怪的结果.由于某些原因,当我使用SimpleDateFormat格式化它时,有7个额外的小时差异.

package timedemo;

import java.text.SimpleDateFormat;
import java.util.Date;

public class Timedemo {

    public static void main(String[] args) {
        Date start = new Date(); // time right now
        Date stop = new Date();

        long startTime = start.getTime()-1000; // introduce a second of skew
        long stopTime = stop.getTime();

        SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ss");

        // First one shows up prior to 1970 epoch. Okay, except for 5 hour variance.
        // Probably a timezone thing, as I'm in EST (-5).
        System.out.println("New date is "+new Date(stopTime …
Run Code Online (Sandbox Code Playgroud)

java time date

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

Windows SxS可再发行版本问题

我有一个程序拒绝在某些Windows 7计算机上运行.使用sxstrace,可执行文件声称需要Microsoft.VC80.CRT/MFC版本8.0.50727.6195和8.0.50608.0.见下文.

> INFO: Parsing Manifest File C:\Program Files
> (x86)\PFPS\falcon\fvw.exe.   INFO: Manifest Definition Identity is
> (null).   INFO: Reference:
> Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195"
> INFO: Reference:
> Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195"
> INFO: Reference:
> Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50608.0"
> INFO: Reference:
> Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50608.0"
> INFO: Resolving reference
> Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195".
> INFO: Resolving reference for ProcessorArchitecture WOW64.
>     INFO: Resolving reference for culture Neutral.
>       INFO: Applying Binding Policy.
>         INFO: No publisher policy found.
>         INFO: No binding policy redirect found.
>       INFO: Begin …
Run Code Online (Sandbox Code Playgroud)

redistributable winsxs msvcrt windows-7

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

如何退出NetBeans平台GUI应用程序?

如何在XML文件中声明TopComponent时以编程方式正确退出NetBeans平台应用程序?

java netbeans

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

C++ deque迭代器有多聪明

说我有一个std::deque<int> d含有100个值,从099.鉴于以下内容:

与向量不同,deques不能保证将其所有元素存储在连续的存储位置中:通过将指针偏移到另一个元素来访问双端队列中的元素会导致未定义的行为.

它似乎在下面的行无效:

int invalidResult = *(d.begin() + 81); // might give me 81, but NOT GUARANTEED, right?
Run Code Online (Sandbox Code Playgroud)

我的问题是:迭代器会处理这个问题吗?

std::deque<int>::iterator it = d.begin();
int isThisValid = *(it + 81); // 81 every time? or does it result in undefined behavior?
Run Code Online (Sandbox Code Playgroud)

有一次,我曾经认为迭代器会处理底层存储中的任何不连续性,但现在我不太确定.显然,如果你使用it++81次,*it会给你81一个结果.

有人可以说肯定吗?

对于它的价值,我不是在使用C++ 11.

c++ stl deque

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

Java Path.startswith()坏了吗?

我不得不误解这一点.鉴于以下代码,我希望打印输出"匹配".我得到"哎呀.没有比赛."

          Path p = Paths.get("C:\\fakename");
          Path q = Paths.get("C:\\fake");
          if(p.startsWith(q))
          {
             System.out.println("they match");   
          }
          else
          {
              System.out.println("oops. no match.");
          }
Run Code Online (Sandbox Code Playgroud)

我有什么误会?文档似乎很清楚.

java

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

Java Enum数据长值设置为零

鉴于下面的枚举,

enum SizeUnits {

    Bytes(1),
    Kilobytes(1024),
    Megabytes(1024 * 1024),
    Gigabytes(1024 * 1024 * 1024),
    Terabytes(1024 * 1024 * 1024 * 1024),
    Petabytes(1024 * 1024 * 1024 * 1024 * 1024);
    private final long multiplier;

    private SizeUnits(long mult) {
        this.multiplier = mult;
        System.out.println("mult="+mult);
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

mult=1
mult=1024
mult=1048576
mult=1073741824
mult=0
mult=0
Run Code Online (Sandbox Code Playgroud)

显然,最后两个是在内部剪切,我不明白为什么.它看起来并不像它应该的,因为我使用的是long长期声称最大值与Java 8是: 2^64-1.

如果它是以整数的大小剪裁,我本来期望它也剪辑1073741824.此外,它不仅仅是环绕,而是实际将值剪切为零.

为什么它将最后两个条目剪辑为零?


更新:

啊.文字的类型.当然.

注意(如下面的答案所述)如果我将该行L作为该行的最后一个条目,它仍然会溢出更大的情况,因为很明显它没有将操作提升long到溢出之前.

现在,当试图通过它进行投射时,为什么它不起作用是有道理的

(long)(1024 * 1024 * 1024 * 1024 * 1024)
Run Code Online (Sandbox Code Playgroud)

但这有效:

(1024 …
Run Code Online (Sandbox Code Playgroud)

java enums primitive-types

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

线程'<No Name>'已退出 - 想给它一个名字

鉴于以下代码,

Process Proc=null;
ProcessStartInfo DirectX=new ProcessStartInfo("dxsetup.exe", "/silent");
DirectX.WorkingDirectory="Tools\\directx";
Proc=Process.Start(DirectX);
Run Code Online (Sandbox Code Playgroud)

The thread '<No Name>' (0x1eec) has exited with code 0 (0x0).在进程终止时,我进入Visual Studio的输出窗口.

我想将文本更改为"No Name"描述性内容,但我在网上找到的所有Thread.Name内容似乎都不适用于Process对象.

有人能指出我正确的方向吗?

在Visual Studio 2010中使用C#.NET 4.0构建.在Windows 7 64位上运行.

c# visual-studio-2010

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

查找 QNX 系统上已安装的内存量

如何找到 QNX Neutrino 系统上安装的内存量?

  • uname -a没有显示
  • top只显示有多少可用内存
  • 我看过pidin syspage没有成功
  • pidin mem详细显示所有已用内存

qnx

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