小编Let*_*_Be的帖子

赋值运算符不是序列点的任何好理由?

有没有什么理由operator =不成为序列点?在C和C++中都有.

我很难想到一个反例.

c c++ sequence-points

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

仅打印与正则表达式匹配的部件

echo "a b _c d _e f" | sed 's/[ ]*_[a-z]\+//g'

结果将是a b d f.

现在,我怎么能把它转过来,只打印_c _e,而不假设其余部分?

regex bash grep sed

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

类似的代码检测器

我正在寻找一种可以比较相似源代码的工具.

我们现在有一个非常微不足道的系统,它有大量的误报,真正的积极因素很容易被埋没在其中.

我的要求是:

  • 相当少量的误报
  • 良好的检测率(是的,这些是相互对立的)
  • 理想情况下,输出比单个值更复杂
  • 可用于C(C99)和C++(C++ 03和最佳C++ 11)
  • 仍然保持
  • 可用于将两个源文件相互比较
  • 可用于非交互模式

编辑:

为避免混淆,以下两个代码段是相同的,应该如下检测:

for (int i = 0; i < 10; i++) { bla; }

int i; while (i < 10) { bla; i++; }

和这里一样:

int x = 10; y = x + 5;

int a = 10; y = a + 5;

c c++ copy-paste detection plagiarism-detection

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

什么是Windows等效的en_US.UTF-8语言环境?

如果我想在Windows上进行以下工作,那么正确的语言环境是什么?如何检测它实际存在: 此代码是通用的,还是仅仅是我的系统?

c++ unicode locale utf-8

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

与SVN上游同步工作

我正在使用一个使用OpenSource项目代码的项目.其中一个要求是尽可能多地将代码推送回上游.

远程项目正在使用Subversion(不是很好).

我目前的设置如下:

[Remote SVN] (git svn fetch)-> [My public Git] <-(push/pull)-> [My dev. Git]
                                    VV
                                  (pull)
                                    VV
                               [Testing grid]
Run Code Online (Sandbox Code Playgroud)

编辑11.7. - 重新阐述了这个问题

我的问题是我的本地公共回购和svn上游的共存.

我必须提供3个公共分支机构:

  • 保守稳定
  • 实验稳定
  • 发展

这些分支现在是线性的(开发变得实验稳定,实验变得保守),但目标是合并的标准3头方法.由于他们的公共性,我不能改变这些分支.

现在与此完全正交,我试图以某种方式使补丁更容易上传.从我的分支机构挖掘它们很慢并且容易出错.

我目前的典型工作流程是:

  • 在顶级开发分支上实现一些功能
  • 测试和修复功能
  • 测试并修复此新功能所破坏的其他功能(实际上发生了很多)
  • 确定这是否可以在上游接受(30:60是:否)
  • 做点什么(我通常只写一个新的TODO)

上游的另一个问题是它们接受不同分支的补丁(我的公共分支基于它们的稳定分支).一旦补丁到达稳定的分支,我可以简单地忘记它们存在,但是直到发生这种情况我还需要将它们保存在本地.

svn git open-source git-svn

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

寻找中等大小的代码块的来源

我作为C开发人员工作的时间越长,我发现自己缺少一些中等大小的代码块.

我有代码片段和库的源代码,但我找不到介于两者之间的代码的良好来源.标题或标题+实现文件但不是库但包含在项目中的东西.

像动态数组,链表或一些调试或记录助手一样.

我知道这部分是由于C开发者的DIY心态,但我只是不相信人们不会分享这样的东西.

c code-snippets

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

任何好的C++ 0x概述?

我教C和C++,我只是想知道是否有很好的C++ 0x功能概述.

我将阅读标准,但这需要时间,我肯定会在本学期(明年有希望).对于本学期,我只想再做一次关于C++ 0x的讲座(并且可能确保在C++ 0x中没有任何教授的功能被弃用/更改).

c++ c++11

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

Microsoft如何处理UTF-16在其C++标准库实现中是可变长度编码的事实

标准中间接禁止使用可变长度编码.

所以我有几个问题:

如何处理标准的以下部分?

17.3.2.1.3.3宽字符序列

宽字符序列是一个数组对象(8.3.4)A,可以声明为TA [N],其中T是wchar_t(3.9.1)类型,可选择由const或volatile的任意组合限定.数组的初始元素定义了内容,包括由某个谓词确定的元素.字符序列可以由指定其第一元素的指针值S指定.

NTWCS的长度是终止空宽字符之前的元素数.空NTWCS的长度为零.

问题:

basic_string<wchar_t>

  • 如何operator[]实施以及它返回了什么?
    • 标准: If pos < size(), returns data()[pos]. Otherwise, if pos == size(), the const version returns charT(). Otherwise, the behavior is undefined.
  • size()返回元素的数量还是字符串的长度?
    • 标准: Returns: a count of the number of char-like objects currently in the string.
  • resize()工作怎么样?
    • 与标准无关,它是做什么的
  • 如何在的位置insert(),erase()和其他处理?

cwctype

  • 几乎所有东西都在这里.如何处理变量编码?

cwchar

  • getwchar() 显然无法返回整个平台 - 角色,那么这是如何工作的?

加上所有其余的角色功能(主题是相同的).

编辑:我将打开奖金以获得一些确认.我希望得到一些明确的答案或至少更明确的投票分配.

编辑:这开始变得毫无意义.这充满了完全相互矛盾的答案.你们有些人谈论外部编码(我不关心那些,UTF-8编码仍然会被存储为UTF-16一旦读入字符串,输出相同),其余只是相互矛盾.: - /

c++ utf-16

11
推荐指数
3
解决办法
813
查看次数

为什么T &&实例化为int&?

任何人都可以解释为什么这个编译,为什么t最终与类型int&

#include <utility>

void f(int& r)
{
    ++r;
}

template <typename Fun, typename T>
void g(Fun fun, T&& t) 
{ 
    fun(std::forward<T>(t)); 
}

int main()
{
    int i = 0;

    g(f, i);
}
Run Code Online (Sandbox Code Playgroud)

我在GCC 4.5.0 20100604和GDB 7.2-60.2上看到了这一点

c++ templates forwarding rvalue-reference c++11

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

Bash,执行命令但继续交互式会话

我想创建一个别名,pagsh这将立即获得管理员kerberos票.

问题是我无法弄清楚如何为运行指定命令bash,但在命令完成后仍然继续交互式会话.

我目前的镜头是:

alias admin=pagsh -c "bash -c \"kinit xtoth1@ADMIN.META\""
Run Code Online (Sandbox Code Playgroud)

但在bash逻辑上kinit完成后就结束了.如何将自定义命令推送到bash的交互式会话中?我仍然需要正常运行.bashrc,因此我无法使用--rcfile

unix linux bash shell kerberos

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