小编Sky*_*eSM的帖子

bash命令在新的命令行窗口中运行程序

我想从bash脚本中运行一个程序,以便在新的命令行窗口中打开它.我怎样才能做到这一点?

bash terminal scripting command-line

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

查找在Perl中的大字符串中找到子字符串的行号

在perl字符串中搜索子字符串的行号的最佳方法是什么?例如:搜索"逃脱"

"How to Format
? put returns between paragraphs
? for linebreak add 2 spaces at end
? _italic_ or **bold**
? indent code by 4 spaces
? backtick escapes `like _so_`
? quote by placing > at start of line
? to make links
<http://foo.com>
[foo](http://foo.com)"
Run Code Online (Sandbox Code Playgroud)

应该给6作为行号.

perl substring line

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

bash 中的以下条件表达式有什么问题?

bash 中的以下条件表达式有什么问题?

if [[ -z $x -o $x -ge 100 -o $x -le -100 ]]; then
        echo $x "\t" $i
fi
Run Code Online (Sandbox Code Playgroud)

我 在 -o 附近的
条件表达式
语法错误中收到以下错误语法错误

谢谢。

bash comparison conditional

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

使用C中的snprintf将所有argv值连接到一个字符串

如何使用snprintf将argv中的所有值连接到一个字符串?

如果我传递的价值,如 ./prog val1 val2 val3 val4

我的字符串 char all_values[MAX_LEN]应该是" val1 val2 val3 val4"

我怎样才能有效地使用snprintf()

c printf concatenation command-line-arguments

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

从中创建shared_ptr后删除原始指针

如果我这样做,

int* p = new int(10);
std::shared_ptr<int>(p);
delete p;
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?shared_ptr删除原始指针后是无效的吗?在这种情况下,有没有办法确保内存访问安全?

c++ shared-ptr segmentation-fault c++11 raw-pointer

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

获取C++中最大的有符号整数类型

假设我必须接受一个大小作为处理数组的接口的参数.对于前者

void doSomethingRelatedToArrays(const size_t length)
Run Code Online (Sandbox Code Playgroud)

在这里,我使用size_t时考虑到以下因素:

  • 长度必须始终为正
  • size_t始终是typedef-ed到系统中最大的无符号整数类型.std :: size_t可以存储任何类型的理论上可能的对象的最大大小.

但是,我不应该在我的接口中使用无符号类型,因为客户端可以传入负数,这是隐式转换为无符号数,我没有办法在我的方法中验证它.请参阅斯科特·迈尔的文章就这个问题在这里.

所以,我应该将有符号整数类型传递给API.但是如何在系统中获得最大的有符号整数类型?是否有任何类似于size_t的typedef被签名?或者我应该只使用size_t?

c c++ signed size-t unsigned-integer

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