小编ind*_*div的帖子

如何在C/C++中获取系统语言?

如何在C/C++中获取系统语言?像en_US或en_GB一样.

c c++ locale posix

4
推荐指数
3
解决办法
5551
查看次数

这个Windows批处理文件如何运行嵌入式javascript?

Windows如何知道这是JSCRIPT?

@set @junk=1 /*
@echo off
cscript //nologo //E:jscript %0 %*
goto :eof
*/
x = WScript.Arguments
Yr = x(0) ; Mo = x(1)

YS = "JanFebMarAprMayJunJulAugSepOctNovDec"
MN = Mo<1 || Mo>12 ? Mo : YS.substr(3*Mo-3, 3) // Month Name
WScript.echo(" ", Yr, "         ", MN)
WScript.echo(" Mo Tu We Th Fr Sa Su")
WD = new Date(Yr, Mo-1, 1).getDay() ;
if (WD==0) WD = 7 // Week Day Number of 1st
LD = new Date(Yr, Mo, 0).getDate() // Last …
Run Code Online (Sandbox Code Playgroud)

javascript windows batch-file

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

OpenSSL字节序列是小端还是大端序?

我正在尝试使用openssl dsa实现,但我对以下细节非常困惑:

  • 命令的选项'-text' openssl dsa ....:输出中的十六进制数字,我是否正确假设那些是字节,因此它们是小端序?

  • 功能BN_bn2hex和BN_hex2bn,他们使用什么Endianess?

在此先感谢您的帮助.

openssl endianness dsa

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

没有安装程序的XNA Game Application

我和朋友计划开发XNA游戏.我负责编程方面,这让我很奇怪 - 在开发过程中,与他分享应用程序更新的最简单方法是什么?

每当我想向他展示一个变化时,他是否会被迫重新安装应用程序?
我可以使用某种补丁机制吗?

也许完全可以创建一个不需要安装程序的游戏 - 只需单击并播放即可?

c# installer xna visual-studio-2010 xna-4.0

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

使用'*'乘以时,C程序的输出令人惊讶

在K&R解决了5-10的练习后:

编写程序expr,它从命令行计算反向波兰语表达式,其中每个运算符或操作数是一个单独的参数.例如,expr 2 3 4 +*评估2*(3 + 4).

在带有'*'字符的表达式中似乎存在问题,即使是基本的问题:2 2*.由于某些奇怪的原因,'*'没有放入运算符数组,而所有其他字符如'+',' - ','/'通常都是.我已经隔离了代码的一部分(while循环),这似乎是错误的.推送功能来自第4章,只需要编译代码.

#include <stdio.h>

void push(double f);

main(int argc, char *argv[])
{
    int a = 0;
    int b;
    char operator[10];

    while (--argc > 0) {
        if (isdigit(*argv[argc]))
            push(atof(argv[argc]));
        else if (*argv[argc]=='+' || *argv[argc]=='-' || *argv[argc]=='*' || *argv[argc]=='/')
            operator[a++] = *argv[argc];
    }
    for (b = 0; b < a; b++)
        printf("%c", operator[b]);
    printf("\n");

    return 0;
}

#define MAXVAL 100  /* maximum depth of val stack */

int sp = …
Run Code Online (Sandbox Code Playgroud)

c

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

IP 片段的 UDP 校验和如何变化?

我需要用 c 语言编写一个基本的网络堆栈,但对正确的做法有一些疑问。假设我只需要在 L4 上支持 UDP,在 L3 上支持 IP。

当我想发送一条需要分段的大消息时。处理这个问题的正确顺序是什么?

1)初始化udp头并计算整个数据字段(加上udp和伪头)的校验和然后对数据字段进行分段,为每个分段构建IP头,然后发送分段。

2) 对数据字段进行分段,然后构建一个 udp 标头,并在每个分段的前面添加不同的校验和。然后构建一个 IP 标头,将每个片段添加到该标头之前。然后发送我们的片段。

我的困惑源于 udp 校验和是否应该包含整个组装的数据报,或者只是单个片段。我非常感谢您提供的任何帮助。

c sockets networking udp

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

Mac 上的正则表达式批量重命名文件

我正在尝试批量重命名 PDF 文件,以从右到左删除所有字符,直到在 Mac 操作系统上达到数字字符。

例如:

10002ASmith.pdf > 10002.pdf

1023A琼斯.pdf > 1023.pdf

文件开头的数字长度是可变的,因此我认为最好让正则表达式从右到左重命名,直到达到数字为止。

我知道 Mac Yosemite 具有批量重命名功能,但没有看到正则表达式重命名选项。在终端中执行此操作是否容易?如果可以,如何执行?或者是否有一个免费程序可以用来使用正则表达式?

我想我只需要知道实际的正则表达式是什么,因为我在正则表达式方面还没有经验。

提前感谢您的帮助!

乔恩

regex macos

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

运算符重载C++映射

我需要帮助理解一些C++运算符重载语句.该类声明如下:

template <class key_t, class ipdc_t>
class ipdc_map_template_t : public ipdc_lockable_t
{
    ...
    typedef map<key_t,
            ipdc_t*,
            less<key_t>> map_t;
    ...
Run Code Online (Sandbox Code Playgroud)

该类的创建者为内部地图结构创建了一个迭代器:

struct iterator : public map_t::iterator
{
    iterator() {}
    iterator(const map_t::iterator & it)
        : map_t::iterator(it) {}
    iterator(const iterator & it)
        : map_t::iterator(
            *static_cast<const map_t::iterator *>(&it)) {}
    operator key_t() {return ((this->operator*()).first);}           // I don't understand this.
    operator ipdc_t*() const {return ((this->operator*()).second);}  // or this.

};
Run Code Online (Sandbox Code Playgroud)

并且begin()和end()返回地图的begin()和end():

iterator begin() {IT_ASSERT(is_owner()); return map.begin();}
iterator end() {return map.end();}
Run Code Online (Sandbox Code Playgroud)

我的问题是,如果我有一个迭代器,我如何使用这些重载来获取密钥和值?

ipdc_map_template_t::iterator iter;
    for( iter = my_instance.begin(); …
Run Code Online (Sandbox Code Playgroud)

c++ templates

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

为什么我的程序使用std :: vector创建堆栈崩溃?

我正在为我的数据结构类创建自己的堆栈.对于我们的任务,我们使用赋值将实时中缀方程转换为后缀方程.
我认为我的程序:
输入
确定它是否为数字或数字(操作数)
打印输出
确定输入是否为运算符(+, - ,/,*)
添加到堆栈或打印输出,具体取决于堆栈优先级

相反,它会按预期打印出操作数,但是当我进入运算符时出现此错误

>.../dorun.sh line 33: 4136 Segmentation fault     <core dumped> sh "$<SHFILE>"


#include <vector>
using namespace std;

class DishWell{  
public:  
    char ReturnEnd(){  
        return Well.back();  
    }  
    void Push(char x){  
        Well.push_back(x);  
    }  
    void Pop(){  
        Well.pop_back();  
    }  
    bool IsEmpty(){  
        return Well.empty();  
    }  
private:  
    vector<char> Well;  
};   
#include <iostream>  
bool Precidence(char Input, char Stack){  
    int InputPrecidence,StackPrecidence;  
    switch (Input){  
        case '*':  
            InputPrecidence = 4;  
            break;
        case '/':
            InputPrecidence = 4;  
            break;  
        case '+':  
            InputPrecidence = 3;  
            break; …
Run Code Online (Sandbox Code Playgroud)

c++ stack

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

如何将单个字节放入网络字节顺序?

所以我有变量:

uint8_t version = 1;
uint8_t ttl = 1;
uint16_t payload_length = 
uint32_t account_identifier = 24027;
uint32_t source_address = 0;
uint32_t destination_address = 0;
uint16_t checksum = 0;
uint16_t protocol = 1;
Run Code Online (Sandbox Code Playgroud)

我想按网络字节顺序排列所有值。

我知道用于htons()16 位值和htonl()32 位值。

所以我会这样做:uint32_t source_address = htonl(0);并且uint16_t checksum = htons(0);

8 位值应该使用什么?

c byte network-programming network-protocols bit

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