问题列表 - 第7228页

为什么生成核心转储文件?

有时当我运行我的代码时,当我通过Ctrl+ 终止程序时会生成核心转储文件\.文件名是表单的名称core.*.该程序没有突然终止,并且没有分段错误.我相信它是,SIGQUIT而不是SIGABRTSIGSEGV.如果我尝试Ctrl+ C,或Ctrl+ Z,则不会生成.

任何人都可以告诉为什么只有在按下Ctrl+ 时才生成它\?如何避免生成此核心转储文件?核心转储文件有用吗?

linux coredump

15
推荐指数
5
解决办法
6万
查看次数

在Perl中压缩文件时如何跳过行?

我怎样才能做到这一点?

open FILE, $somefile;
foreach (<FILE>)
{
   if (/some_regex/)
   {
      $want_the_next_line = <FILE>;
      $want_the_next_line_after_that = <FILE>;
   }
}
Run Code Online (Sandbox Code Playgroud)

明白我的意思了吗?我基本上想要在我的foreach中间插入一堆线,而不是必须记住我的状态并在每次迭代时检查它.而我目前在Perldoc的<>上找不到任何有用的东西.

哦,顺便说一句,我真的不想:

@file = <FILE>;
Run Code Online (Sandbox Code Playgroud)

我相信你明白了.

perl

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

将构造函数中的结构清零

Win32编程中使用了各种结构.很多时候只使用它们的一些字段而所有其他字段都设置为零.例如:

STARTUPINFO startupInfo; // has more than 10 member variables
ZeroMemory( &startupInfo, sizeof( startupInfo ) ); //zero out
startupInfo.cb = sizeof( startupInfo ); //setting size is required according to MSDN
startupInfo.dwFlags = STARTF_FORCEOFFFEEDBACK;
//Now call CreateProcess() passing the startupInfo into it
Run Code Online (Sandbox Code Playgroud)

我想停止复制粘贴这样的代码,而是使用一个关心归零和设置参数的抽象.让我们假设我只需要在示例中初始化结构,并且不需要其他调整.以下是一个很好的解决方案吗?有什么可能的问题?

class CStartupInfo : public STARTUPINFO {
public:
   CStartupInfo()
   {
       ZeroMemory( this, sizeof( STARTUPINFO ) );
       cb = sizeof( STARTUPINFO );
       dwFlags = STARTF_FORCEOFFFEEDBACK;
   }
};
Run Code Online (Sandbox Code Playgroud)

我特别关注ZeroMemory()调用 - 看起来我完全控制代码并且类没有vtable并且调用ZeroMemory()这种方式是安全的并且两个代码片段之间没有大的区别,除了后者提供抽象.有什么警告吗?

c++ winapi

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

如何更改DOM中元素的名称?

在带DOM的PHP中,我有一个代表<identity />元素的DomElement对象.

我有一个案例,我需要更改它,因此它的元素名称是<person />,但保持相同的子元素和属性.

更改DomElement的元素名称并保留其子项和属性的最简单方法是什么?

编辑:我刚刚发现了一个非常相似的问题(尽管它没有很好的答案).

php xml dom

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

c#加密和解密

C#2005我正在使用简单的加密和解密来获取IP地址.远程服务器上的应用程序将加密IP地址,客户端将对其进行解密.但是,当客户端解密IP时,我只返回一些IP地址.其余的都是垃圾.之前:123.456.78.98之后:fheh&^ G.78.98

非常感谢,

 /// Encrypt the SIP IP address in the remote server
        private void encryptSIP_IP(string sip_ip)
        {
            TripleDESCryptoServiceProvider encrypt = new TripleDESCryptoServiceProvider();

        /// Private key
        byte[] key = { 0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 144, 89, 55, 34, 21, 13, 8, 5, 3, 2, 1, 0};

        encrypt.Key = key;
        byte[] byteSIP = System.Text.Encoding.Default.GetBytes(sip_ip);

            ICryptoTransform encryptor = encrypt.CreateEncryptor();
             byte[] encrypted_sip = encryptor.TransformFinalBlock(byteSIP, 0, byteSIP.Length);



/// This will decrypt in the client application
        private …
Run Code Online (Sandbox Code Playgroud)

c# encryption

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

将来自不同包的日志消息记录到不同的文件中

假设我的应用程序中有这些软件包--foo.bar和foo.foobar,我想将所有来自foo.bar软件包的log4j日志消息发送到foobar.log文件,并将来自foo.foobar的日志消息发送到foofoobar .log文件,我该如何配置log4j.xml文件?

java logging log4j

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

编程术语是否具有远离清晰度的内在趋势?

不久之后,我决定学习C#,这是一个相当有益的经验,因为语言似乎很容易上手.

也就是说,术语除外.并不是说有大量的行话(学习任何新的语言/技术) - 使用的术语似乎是笨拙,不清楚或不必要的复杂.与(比如说)IEnumerable集合相比,一个"数组"似乎很容易向某人解释,因为它只是名字.

但这超出了特定的语言/平台.拿下面的话:

  • 函数/子例程与方法
  • 错误与异常
  • 临时表与公用表表达式
  • 用户拥有的表与模式(在SQL Server中)

我理解这些并不是完全相同的术语,但"原始"术语似乎更合适,因此可以说更容易解释或理解.

所以...已经采取的所有"好"名称?

或者这些概念变得更加复杂,因此与日常语言相距甚远.这种趋势有反例吗?(显然有很多任务要简单得多,但这通常是外部库/ OS /等处理程序员以前必须做的事情的结果,而不是更好地描述相同的工作).

或者我完全错了,我的思想只是在小时候学习BASIC(根据Dijkstra)?

terminology

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

从Enterprise Architect模型中提取数据

我正在尝试以编程方式从Enterprise Architect模型中提取信息(保存在XMI文件中) - 我需要它来生成一些报告,但我不想创建EA加载项.在任何地方都有C#XMI解析器库吗?

我当然可以从其XML模式生成XMI解析代码,但这将是我的第二个选择.

c# parsing xmi enterprise-architect

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

货币图书馆

我正在寻找一个.Net类/库与货币缩写词一起使用,就像TimeZoneInfo类与时区一样.

我需要使用这些首字母缩写填充下拉列表并将结果存储在数据库中.此值将用于在稍后阶段从Web检索最新的汇率.

有任何想法吗?

c# asp.net-mvc cultureinfo

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

在csh Shell脚本中读取带有空格的用户输入

我有一个脚本,用户可以在其中输入带空格的字符串。到目前为止,我有:

#bin/csh

echo "TEST 1"
echo -n "Input : "
set TEST = $<

echo "Var | " $TEST

set TEST=`echo $TEST`

echo "Var after echo | " $TEST

set TEST=`echo $TEST | sed 's/ /_/g'`

echo "Var after change | " $TEST
Run Code Online (Sandbox Code Playgroud)

如果我在“输入”中输入字符串“ rr r”,则$ TEST仅取“ r”。我希望能够将$ TEST设置为“ rr r”。这可能吗?如果输入“ 1 1 1”之类的字符串,则会出现错误:

设置:变量名必须以字母开头。

这是什么原因?

shell csh

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