小编Kev*_*rds的帖子

2D阵列的行为

我创建了一个2D数组,并尝试打印某些值,如下所示:

int a[2][2] = { {1, 2}, 
                {3, 4}};

printf("%d %d\n", *(a+1)[0], ((int *)a+1)[0]);
Run Code Online (Sandbox Code Playgroud)

输出是:

3 2
Run Code Online (Sandbox Code Playgroud)

我理解为什么3是第一个输出(a+1指向第二行,我们打印它的0th元素.

我的问题是关于第二个输出,即2.我的猜测是,由于类型转换aint *,所述2D阵列像一维数组进行处理,并且因此a+1充当指向2nd元素,所以我们得到的输出作为2.

我的假设是正确的还是背后还有其他一些逻辑?
另外,原来什么是a被当作​​指针int (*)[2]int **?的类型?

c c++ arrays pointers output

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

无法检查AlarmManager是否设置了警报

我正在检查AlarmManager是否已使用此答案设置了警报.

以下是我的代码段.

boolean alarmUp = (PendingIntent.getBroadcast(MainActivity.this, 0,
    new Intent(MainActivity.this, AlarmReceiver.class), PendingIntent.FLAG_NO_CREATE) != null);
if (alarmUp) {
    // alarm is set; do some stuff
}

Intent alarmIntent = new Intent(MainActivity.this, AlarmReceiver.class);
final PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, alarmIntent, PendingIntent.FLAG_UPDATE_CURRENT);

AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
manager.setInexactRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 10 * 1000, pendingIntent);
Run Code Online (Sandbox Code Playgroud)

但是,alarmUp始终设置为true.也就是说,无论我是否设置闹钟,每当我重新启动我的应用时,它都会告诉我这alarmUp是真的(我通过制作一个来检查它Toast).

请帮助我出错的地方.

service android alarmmanager android-intent

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

将UTC日期转换为本地日期

我正在从纪元时间(UTC时间)转换为如下所示的格式。现在,我尝试了不同的答案SO转换UTCDateUTC本地时间。但是我没有当地时间。

任何帮助,将不胜感激。

String epochTime = "1436831775043";

Date UTCDate = new Date(Long.parseLong(epochTime));
Date localDate; // How to get this?

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("h:mm a");
String result = simpleDateFormat.format(UTCDate);
Run Code Online (Sandbox Code Playgroud)

另外,转换必须在没有任何外部库帮助的情况下完成。

java datetime date simpledateformat

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

"va_start"的第二个参数

对于以下代码:

void fun(char *msg, int n, int m, ...) {
    va_list ptr;
    va_start(ptr, m);  // Question regarding this line

    printf("%d ", va_arg(ptr, int));
}
Run Code Online (Sandbox Code Playgroud)

该函数调用如下:

fun("Hello", 3, 54, 1, 7);
Run Code Online (Sandbox Code Playgroud)

我的问题是关于上面评论的那一行.我尝试了该行的以下三个版本:

va_start(ptr, msg);
va_start(ptr, n);
va_start(ptr, m);
Run Code Online (Sandbox Code Playgroud)

在所有三种情况下,我得到"1"作为输出.根据我的阅读,第二个参数va_start应该是函数参数列表中的最后一个参数fun(),即va_start(ptr, m);应该是正确的调用.那么为什么我在这三种情况下得到相同的输出.

[我在Ideone上运行程序,如果这有任何后果.]

c c++ variadic-functions

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

unsigned int的补充

我最近遇到了以下代码:

unsigned short int a = 0xffff;
~a;
printf("%x", a);
Run Code Online (Sandbox Code Playgroud)

它的输出是:

0xffff
Run Code Online (Sandbox Code Playgroud)

根据我所学到的,~a应该翻转给出以下内容的所有内容:

0x0000
Run Code Online (Sandbox Code Playgroud)

那么,为什么输出0xffff呢?

c c++ bit-manipulation

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

sizeof()运算符的行为

对于以下代码:

char a[] = "Apple";
char *s[] = {"Apple"};
printf("%d %d\n", sizeof(a), sizeof(s[0]));
Run Code Online (Sandbox Code Playgroud)

输出是:

6 4
Run Code Online (Sandbox Code Playgroud)

有人能告诉我为什么sizeof()给出不同的输出?

编辑:我原本打算打字sizeof(),但输入strlen().我为此道歉.我现在已经编辑了这个声明.

c c++ string sizeof char

0
推荐指数
2
解决办法
213
查看次数

jQuery append()函数不附加每个<p>元素

我是JavaScript的新手.完整代码在这里(无法在问题的主体中输入jQuery).

以下是代码的JS部分

$(document).ready(function(){
    $("#btn1").click(function(){
        var newtext =  $("<b>It works!</b>");
        newtext.hide();
        $("p").append(newtext);
        newtext.fadeIn();
    });
});
Run Code Online (Sandbox Code Playgroud)

我打算做的是,当用户点击按钮("#btn1")时,一段新文本("It works!")应出现在HTML 的每个 <p>元素的末尾.但是当我运行代码时,文本仅被添加到最后一个 <p>元素.也就是说,如果您从上面的链接打开源代码,您将看到有两个<p>元素.但是"它有效!" 文本仅附加到第二个文本.

如何在每个 <p>元素的末尾添加此文本?

html javascript jquery

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

CSS"颜色"不起作用

我有一个link_to如下所示:

<td><%= link_to '<span class="glyphicon glyphicon-trash"></span>Delete it'.html_safe, post, method: :delete, data: {confirm: 'Are you sure?'}, class: 'btn btn-danger btn-lg white' %></td>
Run Code Online (Sandbox Code Playgroud)

如你所见,我已经添加了一个"白色"类.它的目的是定义一个CSS,使白色按钮中的文本"删除它"的颜色.CSS如下:

.white {
    color: white;
    background-color: yellow;
}
Run Code Online (Sandbox Code Playgroud)

问题是除了"color"之外的所有选项在CSS中都能正常工作.例如,在上述情况下,"背景颜色"工作正常,但"颜色"不工作.文本的颜色永远不会改变(保持默认 - 黑色).

我不知道我哪里出错了.我该如何解决这个问题?

html css ruby ruby-on-rails

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