小编Rob*_*obᵩ的帖子

如何在C++中将无符号char []打印为HEX?

我想打印以下散列数据.我该怎么办?

unsigned char hashedChars[32];
SHA256((const unsigned char*)data.c_str(),
       data.length(), 
       hashedChars);
printf("hashedChars: %X\n", hashedChars);  // doesn't seem to work??
Run Code Online (Sandbox Code Playgroud)

c++ printf hex unsigned-char

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

初始化对象数组

我目前正在开发纸牌游戏,我遇到了一些初始化代码问题:

// in my class...
Card cards[20];
// in method...
for(int i = 0; i <= 20;i++)
    cards++ = new Card(i, /*i as char +*/ "_Card.bmp");
Run Code Online (Sandbox Code Playgroud)

问题是我的编译器告诉我这cards++不是一个l值.我已经阅读了整个指针 - 数组等价的东西,我以为我理解它,但唉,我无法让它工作.我的理解是,由于cards降级为指针,并且new操作员给我一个指向我的新Card实例的位置的指针,所以上面的代码应该编译.对?

我已经使用标尝试为好,但不cards+i,cards++cards[i]刚3说同样的事情的方法呢?我认为每个都是l值,并被视为指针.

c++ arrays

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

将C++/CLI类方法作为C函数指针传递

我有一个提供此标头的第三方C库:

//CLibrary.h
#include <Windows.h>
#include <process.h>
typedef void (WINAPI *CLibEventCallback)(int event, void *data);
__declspec(dllexport) bool CLibStart (CLibEventCallback callback, void *data);

// CLibrary.c -- sample implementation
static CLibEventCallback cb;

void _cdecl DoWork (void *ptr)
{
    for (int i = 0; i < 10; ++i)
    {
        cb (i*i, ptr);
        Sleep (500);
    }
}

__declspec(dllexport) bool CLibStart (CLibEventCallback callback, void *data)
{
    cb = callback; // save address for DoWork thread...
    _beginthread (DoWork, 0, data);
    return true;
}
Run Code Online (Sandbox Code Playgroud)

我需要创建一个C++/CLI类,它可以调用CLibStart并提供一个类方法作为函数指针.如下所示,这需要使用GetFunctionPointerForDelegate完成.因为delete构造函数包含'this'并且不需要静态方法,所以我不需要将'this'传递给CLibStart.

using namespace …
Run Code Online (Sandbox Code Playgroud)

c++-cli function callback

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

在窗户上服务与女服务员的烧瓶应用程序

我可以使用以下代码运行Web服务器

from flask import Flask
from waitress import serve

app = Flask(__name__, static_url_path='/static')
...
serve(app, port=8080)
Run Code Online (Sandbox Code Playgroud)

问题是我只能从运行它的机器访问它,如果我尝试使用ipv4 ip访问它,它不起作用.我错过了一步吗?

python wsgi flask waitress

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

这个陈述是如何评估的,这是什么叫做?

#define FOO(val) \
({                                              \
   int b = val;                                 \
   printf("First, let's count to %d\n", val);   \
   for (int i = 1; i <= val; i++) {             \
      printf("%d...\n", i);                     \
   }                                            \
   b++;                                         \
   b;                                           \
})

int main() {
   int a = FOO(6);
   printf("a=%d\n", a);

   a = (4);     // straightforward, everyone should be familiar with this
   a = (4;);    // does not compile
   a = { 4; };  // does not compile
   a = ({ 4;}); // valid, …
Run Code Online (Sandbox Code Playgroud)

c gcc

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

如何创建"x"大小的文件?

如何在c中设置文件的大小?我打开后会这样做吗?

c file-io

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

什么是常量的"const T&operator [](size_type i)"?

我发现了这个有趣的一行:一本书http://www.acceleratedcpp.com/ - sources - 第11章 - Vec.h(我是一个std :: vector翻拍)

我真的不明白这个版本的运营商的优点是什么.为什么要定义此运算符的两个版本(const和非const)?

我甚至尝试过,在我看来,非常规版本一直被调用...你能解释一下吗?

#include <iostream>
#include <algorithm>
#include <cstddef>
#include <memory>
using namespace std;

template <class T> class Vec {
public:
    typedef T* iterator;
    typedef const T* const_iterator;
    typedef size_t size_type;
    typedef T value_type;
    typedef T& reference;
    typedef const T& const_reference;

    Vec() { create(); }
    explicit Vec(size_type n, const T& t = T()) { create(n, t); }

    Vec(const Vec& v) { create(v.begin(), v.end()); }
    Vec& operator=(const Vec&); // as defined in …
Run Code Online (Sandbox Code Playgroud)

c++ operator-overloading

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

python 2.7存在于字典中

我想在字典中测试一个键的存在,如果键不在字典中:做某事'我已经多次这样做了,但这次它表现得很奇怪.

尤其:

termCircuit = termCircuitMap[term]
Run Code Online (Sandbox Code Playgroud)

返回KeyError

当我在Eclipse PyDev中调试此代码时,我得到以下内容(使用表达式):

term in termCircutiMap        # prints False
term in termCircuitMap.keys() # prints True
Run Code Online (Sandbox Code Playgroud)

有谁知道这有可能吗?我认为,如果某些东西在"密钥集"中,那么它就在字典中.

我附上了评估的截图.

http://img836.imageshack.us/img836/1274/screenshotpython.png

非常感谢解释:)

python python-2.7

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

在python中有大量因子

这是我对阶乘的方法:

def factorial(n):
    '''Returns factorial of n'''
    r = 1
    for i in range(1, n + 1):
        r *= i
    return r
Run Code Online (Sandbox Code Playgroud)

我认为这很简单,但我猜你可以提高效率,因为像100000这样的大数字需要很长时间.我的问题是,有吗?math.factorial()也不好,它花费的时间大致相同.

python algorithm factorial

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

泛型如何在C++/CX中运行

我在互联网上找不到任何相关内容,所以我正在寻找能够深入了解C++/CX的方式的人.在维基百科的文章对C++/CX说,它支持基于运行时的仿制药,至极将意味着你不需要与全面实施的头文件,以实例化一个泛型类型.我承诺它如何适用于.NET(程序集包含IL代码,JIT只能在其中插入具体类型并在有新的实例化时编译它),但在C++/CX(本机编译)中没有JIT可以编辑运行时的代码(我认为x86机器代码非常难)

那么这里有什么诀窍,是用拳击或一些新设计方案进行类型擦除?

(我知道有关类型的元数据以.NET格式存储,我在方法中的代码之后)

c++ windows-runtime c++-cx

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