小编sha*_*kin的帖子

C中的指针到const转换

以下代码在GCC上编译时没有警告,但在Visual Studio 2005中发出警告.

const void * x = 0;
char * const * p = x;
Run Code Online (Sandbox Code Playgroud)

x指向未知类型的常量对象,p指向char的常量指针.为什么p的赋值会导致警告?

同样,这是C,而不是C++.谢谢.

c const

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

如何从C中的字符串中删除标点符号

我想从字符串中删除所有标点符号并在C中将所有大写字母小写,任何建议?

c string

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

在PHP中动态使用函数原型

我正在用PHP编写一个构造,其中解析器确定动态调用哪个函数,类似这样:

// The definition of what to call
$function_call_spec = array( "prototype"  => "myFunction", 
                             "parameters" => array( "first_par"  => "Hello",
                                                    "second_par" => "World"));

// Dispatch
$funcPrototype = $function_call_spec["prototype"];
$funcPrototype(); // Here we call function 'myFunction'.
Run Code Online (Sandbox Code Playgroud)

这一切都很好,花花公子.但现在是下一步,传递参数,我不知道是否有可能按照我想要的方式进行.它永远不会让我惊讶,但是这些天脚本语言可以做什么,所以这里是:

可以将参数传递给函数,如下所示:

// Here we call function 'myFunction' with the array of parameters.
$funcPrototype( $function_call_spec["parameters"] );
Run Code Online (Sandbox Code Playgroud)

但是,我想用明确的参数等正确地声明'myFunction':

function myFunction( $first_par, $second_par )
{

}
Run Code Online (Sandbox Code Playgroud)

接下来的问题是 - 有没有办法通过循环参数数组动态地将参数传递给函数?

为了澄清,我并不想这样做,是这样的:

$funcPrototype( $function_call_spec["parameters"]["first_par"],
                $function_call_spec["parameters"]["second_par"]  );
Run Code Online (Sandbox Code Playgroud)

因为这需要我的代码静态地知道关于myFunction的细节,这违背了整个想法.

相反,我想以某种方式这样做:

// Special magic PHP function which can be used …
Run Code Online (Sandbox Code Playgroud)

php function-calls

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

你如何争论"高音",真正的生产类代码?

这个问题已在关于UI的更具体层面上的类似帖子中得到解决.

我想在更一般的设计层面上讨论这个问题.

我每天都在设计上做出决定,以确保高品质.但是我时不时地与中层管理人员和没有经验的开发人员讨论"以正确的方式"做事的好处.

有时候我只是说"相信我,我已经看到了这种情况,我们正在以另一种方式做到这一点",有时候我会尝试制定一个特定的选择会引入问题等的情况.大部分时间我觉得我没有联系到我正在与之交谈的人.我不妨说"相信我".

我觉得我作为高级软件人员的能力之一应该是解释和激励我们作为一家公司所做的技术选择.我可以在经济和用户体验方面做到这一点.

但我似乎无法在技术和伪技术层面上解释为什么某些设计选择"感觉不对"以及为什么其他人感觉更正确和有益,即使最初它可能更难实现或看起来不必要的复杂.

幸运的是,我偶尔会表现出良好的效果,否则我可能会开始怀疑好的和坏的设计的整个概念.

我真的觉得有趣的是要了解其他人对此有何看法.

提前致谢!

software-quality

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

n = 0和n = n - n之间的差异

当我读到这个问题时,我记得有人告诉过我(多年前),从装配者的角度来看,这两个操作是非常不同的:

n = 0;

n = n - n;
Run Code Online (Sandbox Code Playgroud)

这是真的,如果是的话,为什么会这样呢?

编辑:正如一些回复所指出的,我想这对于编译器优化到同一个东西来说相当容易.但我觉得有趣的是,如果编译器采用完全通用的方法,它们会有所不同.

c compiler-construction optimization assembly

3
推荐指数
5
解决办法
512
查看次数

Microsoft的STL :: list :: sort()使用哪种排序算法?

注意:我不小心发布了这个问题而没有指定我正在使用哪个STL实现,我觉得它无法真正更新,因为它会使大多数答案过时.

所以,正确的问题是 - 假设我使用的是Microsoft Visual C++的STL库,在下面的代码中使用了哪种排序算法?:

list<int> mylist;

// ..insert a million values

mylist.sort();
Run Code Online (Sandbox Code Playgroud)

sorting algorithm stl visual-c++

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

Win32 API优于.NET的优点

这是对早期问题的改写,社区严重破坏了这个问题.很公平,它可能过于争论.

由于我真的对这里人们对此的看法感兴趣,希望这个更具体的问题将被接受.

  • 列举Win32 API在3 - 5年内仍将拥有的优势.

.net winapi

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

从python中的stdin读取时管道文件描述错误

这个问题重复一遍.投票结束.

在Windows命令行考虑这个.

scriptA.py | scriptB.py
Run Code Online (Sandbox Code Playgroud)

在scriptA.py中:

sys.stdout.write( "hello" )
Run Code Online (Sandbox Code Playgroud)

在scriptB.py中:

print sys.stdin.read()
Run Code Online (Sandbox Code Playgroud)

这会生成以下错误:

c:\> scriptA.py | scriptB.py
close failed: [Errno 22] Invalid argument
Traceback (most recent call last):
  File "c:\scriptB.py", line 20, in <module>
    print sys.stdin.read()
IOError: [Errno 9] Bad file descriptor
Run Code Online (Sandbox Code Playgroud)

"关闭失败"消息似乎来自scriptA.py的执行.

如果我使用sys.stdin.read(),sys.stdin.read(1),sys.stdin.readlines()等等并不重要.

怎么了?

这个问题重复一遍.投票结束.

python windows pipe

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

C#/ .NET - 如何从另一个线程触发listview的更新

似乎我被禁止从主线程之外的另一个线程访问(即更新)我的列表视图控件.

如何执行某些线程任务,然后以某种方式发出信号以启动listview的更新?

.net c# multithreading listview

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

什么是我的大O?

我的值排序时钟程序:

  • 100000 8s
  • 1000000 82s
  • 10000000 811s

那是O(n)吗?

big-o

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