小编Rnd*_*p13的帖子

为什么memset,memchr等内存函数在string.h中,而在stdlib.h中却没有其他mem函数?

我想知道,为什么这样的功能如下:
-memset
-memmov
-memchr
-memcpy

存在于string.h头文件中,但不存在于stdlib.h文件中,其中还有其他标准内存函数作为动态内存分配:malloc,calloc,realloc,free.

也许最好将它们合并在一个标题中?你怎么看待这件事?我不明白,为什么一组内存函数与其他函数分离并存在于字符串头(string.h)中.

c memory header function

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

tomcat 7中的Xframe选项

我在tomcat web.xml中添加了以下代码片段以防止点击劫持.

在添加内置过滤器的部分中,我已经添加了

<filter>
    <filter-name>httpHeaderSecurity</filter-name>
    <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
    <init-param>
        <param-name>antiClickJackingOption</param-name>
        <param-value>SAMEORIGIN</param-value>
    </init-param>
</filter>
Run Code Online (Sandbox Code Playgroud)

对于过滤器映射部分,我添加了.

<filter-mapping>
    <filter-name>httpHeaderSecurity</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
</filter-mapping>
Run Code Online (Sandbox Code Playgroud)

编辑并进行这两项更改后,测试页面(我试图打开目标页面的html页面<frame>)通过(无法在框架内打开目标页面).
但是apache欢迎页面给出了404新的更改.

如果我遗失任何东西,请告诉我.

tomcat web.xml x-frame-options clickjacking

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

内存中的字符串文字是什么?堆栈/堆?

可能重复:
C字符串文字:它们去哪里了?

我所知道的,

通常,指针必须由malloc()分配,并将分配给堆,然后由free()取消分配;

非指针(int,char,float等)将自动分配给堆栈,并且只要函数返回就不会分配

但是,从以下代码:

#include <stdio.h>

int main()
{
char *a;

a = "tesaja";

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

a分配到哪里?堆栈还是堆?

c heap stack pointers char

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

将对象的"this"指针更改为指向不同的对象

class C{
   //methods and properties
}

void C::some_method(C* b){
    delete this;
    this = b;     
}
Run Code Online (Sandbox Code Playgroud)

这在编译时给出了以下错误:

error: lvalue required as left operand of assignment
Run Code Online (Sandbox Code Playgroud)

我的意图:假设有C类的对象a和b.C类的内容可能非常庞大,而且逐字段复制可能非常昂贵.我想以经济的方式a将' '的所有内容替换为' b'.

默认复制构造函数会执行预期的任务吗?

我找到了一个叫做'移动构造函数'的东西 http://akrzemi1.wordpress.com/2011/08/11/move-constructor/

也许,它可能会得到我想要的效果.

c++ this

13
推荐指数
4
解决办法
9331
查看次数

KMALLOC大小分配

KMALLOC仅在页面大小内存中分配,还是可以分配更少?kmalloc可以分配的大小是多少?我在哪里可以找到它的描述,因为我看到它并没有真正说明它分配了多少内存?我想知道的是KMALLOC分配的实际大小是多少.它是否分配2的功率大小?它只是从缓存中找到准备好的自由对象吗?

c linux memory linux-kernel

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

如何访问 Spark Web UI?

我正在本地运行 4 个节点的 Spark 应用程序。当我运行我的应用程序时,它显示我的驱动程序具有这个地址 10.0.2.15:

INFO Utils: Successfully started service 'SparkUI' on port 4040.
INFO SparkUI: Bound SparkUI to 0.0.0.0, and started at http://10.0.2.15:4040
Run Code Online (Sandbox Code Playgroud)

在运行结束时显示:

INFO SparkUI: Stopped Spark web UI at http://10.0.2.15:4040
INFO MapOutputTrackerMasterEndpoint: MapOutputTrackerMasterEndpoint stopped!
INFO MemoryStore: MemoryStore cleared
INFO BlockManager: BlockManager stopped
INFO BlockManagerMaster: BlockManagerMaster stopped
INFO OutputCommitCoordinator$OutputCommitCoordinatorEndpoint: OutputCommitCoordinator stopped!
INFO SparkContext: Successfully stopped SparkContext
Run Code Online (Sandbox Code Playgroud)

我试图通过以下方式访问 Spark Web: 10.0.2.15:4040但该页面无法访问。尝试使用以下地址也没有帮助:

 http://localhost:18080
Run Code Online (Sandbox Code Playgroud)

使用ping 10.0.2.15结果是:

Send a request 'Ping' 10.0.2.15 with 32 bytes of data

Waiting …
Run Code Online (Sandbox Code Playgroud)

apache-spark

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

STL映射找到第一个不可重复的字符

我写了一个小的C++程序来保持字母表的数量.我正在使用stl地图,

有趣的是,我没有得到输入中出现的列表.例如对于TESTER这个词,我的程序应该给出

T  2
E  2
S  1
R  1
Run Code Online (Sandbox Code Playgroud)

但它的给予,

E       2
R       1
S       1
T       2
Run Code Online (Sandbox Code Playgroud)

改变字母的位置,

我想要输入中出现的字母的o/p.如果我遗漏了什么,请帮助我.这是我的代码

#include<iostream>
#include<map>

using namespace std;

int main()
{
    char *str = "TESTER";
    map<char,int> checkmap;
    map<char,int>::iterator p;
    int i;
    while( *str != '\0' )
    {
        p = checkmap.find(*str);
        i = p->second;
        if(p == checkmap.end())
        {
            checkmap.insert(std::make_pair(*str,++i));
        }
        else
        {
            p->second = ++(p->second);
        }
    str++;
    }
    for(p=checkmap.begin(); p!=checkmap.end(); p++)
    {
        /*if(p->second == 1)
        {
            cout<<(*p).first<<endl;
        }*/
        cout<<p->first<<"\t"<<p->second<<endl;
    }

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

c++ stl

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

scanf需要额外的参数为什么?

我是c ++的新手,我开发用于扫描以获取输入参数.但我给了两个输入参数.但程序允许我输入额外的参数.请解释一下为什么会这样.请在下面找到使用的代码II.

#include <iostream>

int main(int argc, const char * argv[]) {

    int a,b;


    scanf("%i %i ",&a,&b);

    printf("a-> %i",a);
    printf("b-> %i",b);

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

输出(允许40作为额外参数)

20
    30
    40
    a-> 20b-> 30Program ended with exit code: 0
Run Code Online (Sandbox Code Playgroud)

c c++ scanf

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

C 中内联函数内部链接的澄清

从理论上讲,inline函数在 C 中具有内部/静态链接,也就是说,它们仅在单个翻译单元中可见。因此,在两个单独的文件中定义的内联函数不应该能够看到彼此,并且两者都有自己的地址空间。

我正在尝试使用以下文件

***cat a.c*** 

#include <stdio.h>

inline int foo()
{
    return 3;
}

void g()
{
    printf("foo called from g: return value = %d, address = %#p\n", foo(), &foo);
}


***cat b.c***
#include <stdio.h>

inline int foo()
{
    return 4;
}

void g();

int main()
{
    printf("foo called from main: return value = %d, address = %#p\n", foo(), &foo);
    g();
    return 0;
}

gcc -c a.c
gcc -c b.c
gcc -o a.out a.o b.o

b.o: In …
Run Code Online (Sandbox Code Playgroud)

c inline-functions linkage

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

使用指向char的指针时出现分段错误

在编译和执行以下程序时,我在编译期间收到警告并在执行期间发生seg错误.

警告

program.c: In function main:
program.c:17: warning: passing argument 2 of convertString from incompatible pointer type
Run Code Online (Sandbox Code Playgroud)

第17行是打电话给 convertString(input, &output);

附加调试器可以看到在下面的行发生了段错误

Program received signal SIGSEGV, Segmentation fault.
0x0000000000400521 in convertString (input=0x7fffffffd100 "abcdefg", output=0x7fffffffd0f0) at program.c:9
9           **output = *input;
(gdb) s

#include<stdio.h>
#include<string.h>
void convertString(char *input, char **output)
{
    if(strlen(input)== 0)
    {
        return;
    }
    **output = *input;
    (*output)++;
    convertString(input+1,output);
}
int main()
{
    char input[] = "abcdefg";
    char output[sizeof(input)];
    convertString(input, &output);
    printf("%s", output);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

请帮助我在哪里做错了.

c pointers char segmentation-fault

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

领导聚类算法解释

我试图理解这个算法,但无法获得适当的文档和解释.有人可以帮我理解这种聚类算法.

algorithm cluster-analysis hierarchical-clustering data-mining

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