小编Say*_*iss的帖子

使用是否安全(str1 + str2).c_str()?

我测试了这段代码:

#include <iostream>
#include <cstdio>
#include <string>
using namespace std;

int main()
{
    string s1("a"),s2("b");
    const char * s = (s1+s2).c_str();
    printf("%s\n",s);
}
Run Code Online (Sandbox Code Playgroud)

它返回"ab".

据我所知,因为它(s1 +s2)是一个临时对象,可能会以某种方式消失(我不知道),然后const char * s可能指向未定义的内存并可能被转储.

那么使用.c_str()那样安全吗?

c++ string

36
推荐指数
3
解决办法
1546
查看次数

为什么"[x] y"在RTL方向上显示不正确?

<div style="direction: rtl">
[x]y
</div>
Run Code Online (Sandbox Code Playgroud)

您可以看到HTML文本[x]y显示为x]y].

这个结果是什么原因?

PS:我在Chrome 56.0.2924.87(64位)中得到了这个结果.

html css right-to-left

34
推荐指数
3
解决办法
2391
查看次数

这两种传递参数的方式有什么区别?

在Python中,这两个例子做了同样的事情:

from tkinter import Label
widget = Label(None, text='Hello')
widget.pack()
widget.mainloop()

from tkinter import Label
widget = Label(None,'Hello')
widget.pack()
widget.mainloop()
Run Code Online (Sandbox Code Playgroud)

我认为Label是一个类,当我尝试创建该类的实例时,我总是做与上一个代码示例相同的事情.我觉得这个意思很奇怪text='Hello'.有人可以告诉我这件事吗?

python

23
推荐指数
4
解决办法
1588
查看次数

如何找到只有0和1的最小数字除以给定的数字?

每个正整数除以某个数字,其表示(基数10)仅包含零和1.

人们可以证明:

考虑数字1,11,111,1111等,直到111 ... 1,其中最后一个数字有n + 1个数字.将这些数字称为m 1,m 2,...,m n + 1.当除以n时,每个余数都有一个余数,其中两个余数必须相同.因为它们中有n + 1个,但只剩下n个值.这是着名而有用的"鸽笼原理"的应用;

假设具有相同余数的两个数字是m i和m j ,其中i <j.现在从较大的减去较小的.得到的数字m i -m j由j-i个后跟i零组成,必须是n的倍数.

但如何找到最小的答案?而且效率很高?

algorithm math division

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

为什么"历史| vim"不起作用?

我想使用Vim来查看history(不在shell中)的结果.我认为history | vim会工作(使用结果history作为输入vim),但它返回:

$history | vim
Vim: Warning: Input is not from a terminal
Vim: Error reading input, exiting...

Vim: Finished.
Run Code Online (Sandbox Code Playgroud)

任何人都能解释一下吗?

linux vim bash

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

'integer +""'是在Java中将整数转换为字符串的好方法吗?

我总是使用String.valueOf(integer)将整数转换为字符串,但我看到有人要这样做integer + "".例如,

int i = 0;
String i0 = i + "";
Run Code Online (Sandbox Code Playgroud)

那么,这是将整数转换为字符串的好方法吗?

java

9
推荐指数
2
解决办法
606
查看次数

如何实现两个可以互相访问的结构?

我写的代码:

    struct A;
    struct B;
    struct A
    {
        int v;
        int f(B b)
        {
            return b.v;
        }
    };

    struct B
    {
        int v;
        int f(A a)
        {
            return a.v;
        }
    };
Run Code Online (Sandbox Code Playgroud)

编译消息:

|In member function 'int A::f(B)':|
11|error: 'b' has incomplete type|
7|error: forward declaration of 'struct B'|
||=== Build finished: 2 errors, 0 warnings (0 minutes, 0 seconds) ===|
Run Code Online (Sandbox Code Playgroud)

我知道,为什么代码不正确,但我不知道如何实现两个可以相互访问的结构.有什么优雅的方式吗?提前致谢.

c++ syntax dependencies struct forward-declaration

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

如何用C编写程序来测量缓存的速度?

编写程序并尝试比较(测量,如果可以)从主存和高速缓存访​​问数据的时间.

如果你能做到,那么如何衡量每级缓存的速度?

c caching

8
推荐指数
2
解决办法
1680
查看次数

如何理解"typedef int(xxx)(int yyy);"?

typedef int (xxx)(int yyy);似乎定义了一个名为的函数指针xxx,它指向一个带整数参数的函数yyy.

但我无法理解语法......任何人都可以给出一个很好的解释吗?


我发现typedef int xxx(int yyy);仍然有效.他们之间有什么区别?

c syntax

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

为什么我的jQuery空无效?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="https://code.jquery.com/jquery-2.2.3.min.js"></script>
</head>
<body>

<button type="button" onclick="submit();">launch</button>
<button type="button" onclick="clear();">clear</button>


<div>
    Result:<br>
    <div id="result">
    </div>
</div>
<script>
    function clear() {
        $('#result').empty()
    }

    function submit() {
        $('#result').append('<div>xxxxx</div>')
    }
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Launch按钮运作良好,但clear没有.我$('#result').empty()在控制台中运行,它按预期清除了div.

您可以在jsfiddle中调试我的代码.

javascript jquery

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