我想知道$ 0和$ SHELL之间的确切区别.我知道这两个用于了解shell信息.如果有人用例子解释,那将是很好的.
如果两者都显示如下不同的值,它表示什么?
# echo $0
ksh
# echo $SHELL
/sbin/sh
#
Run Code Online (Sandbox Code Playgroud) 我真的想编写可在任何平台(PC,Linux和Mac)上运行的.NET应用程序.我并不真正关心UI功能,因为这些主要是后台服务.我听说过MONO并且它允许你编写在Mac和Linux上运行的.NET应用程序,但我希望能够编写一个应用程序,当为Windows编译时将作为服务运行,并且当编译为Linux时像UNIX等效的那样运行.我也希望能够将内容存储在注册表中并使其工作.有没有办法像这样编写真正的操作系统无关的代码?......并且不要说我应该让它在网上运行!:)
给出以下代码:
<body>
<img src="source.jpg" />
<p>
<img src="source.jpg" id ="hello" alt="nothing" />
<img src="source.jpg" id ="world"/>
</p>
</body>
Run Code Online (Sandbox Code Playgroud)
什么是最好的方法 - 使用正则表达式(或更好?) - 替换它,使它成为这样:
<body>
<img src="source.jpg" id="img_0" />
<p>
<img src="source.jpg" id ="img_1" alt="nothing" />
<img src="source.jpg" id ="img_2"/>
</p>
</body>
Run Code Online (Sandbox Code Playgroud)
换一种说法 :
所有<image />标签都由一个id属性填充.
该id属性应该包含一个递增的属性(这不是真正的问题,尽管它只是替换过程的一部分)
我想需要两个传递,一个用于删除所有存在的id属性,另一个用于填充新的属性?
我通过以下方式编译特定代码没有问题:
g++ -I /opt/local/include Code1.cc -o Code1
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试在makefile中执行此操作时:
CXX = g++ -Wall -Werror -gstabs -pedantic -O2 -g
all: Code3 Code2 Code1
Code3: Code3.cc Tools.cc
$(CXX) $^ -o $@
Code2: Code2.cc Tools.cc
$(CXX) $^ -o $@
Code1: Code1.cc Tools.cc
$(CXX) -I /opt/local/include $^ -o $@
Run Code Online (Sandbox Code Playgroud)
它抱怨.这样做的正确方法是什么?请注意,只有Code1.cc需要外部库作为包含.
Code1.cc的标题如下所示:
#include <iostream>
#include <vector>
#include <fstream>
#include <sstream>
#include <iomanip>
#include <boost/math/distributions/chi_squared.hpp>
using namespace std;
using boost::math::chi_squared;
using boost::math::quantile;
Run Code Online (Sandbox Code Playgroud)
我得到的错误如下:
g++ -Wall -Werror -gstabs -pedantic -O2 -g -I/opt/local/include Code1.cc Tools.cc -o EstimateErrorMean
In file …Run Code Online (Sandbox Code Playgroud) 以下代码:
int *a;
*a = 5;
Run Code Online (Sandbox Code Playgroud)
最有可能导致分段错误,我知道原因.
以下代码:
int a;
*a = 5;
Run Code Online (Sandbox Code Playgroud)
甚至不会编译.(gcc说:unary*的无效类型参数).
现在,指针只是一个整数,用于存储地址.所以,如果我说:为什么它应该是一个问题:
*a = 5;
Run Code Online (Sandbox Code Playgroud)
理想情况下,这也应该导致分段错误.
如果我在c ++程序中有一些c ++代码作为字符串数量(数据),我可以执行该字符串的内容吗?
在C#中使用CodeDOM或在perl,python等中使用eval函数.
在Stack Overflow上播放的大部分代码高尔夫都涉及到ASCII数字,而codegolf.SE正在以同样的方式形成.
这一切都很好,但我想在输出中注入一些变化,并编写了我最近的问题输出一个可玩的填字游戏网格,以鼓励图形格式条目.
为了表示愿意,我开始尝试将后记中的参考实现破解.唉,我对语言完全不熟悉,并且在执行基本文件IO时遇到了麻烦.有谁知道涵盖这个主题的基本资源?
我知道
file(%stdin)tokenreadstringreadline但是我很清楚到底是什么后三个回归以及在你得到之后如何操纵它.
我已经发现有几个返回一<value> <boolean>对,我可以if用来测试布尔值.那又怎样?
我正在维护一些由我最后工作的人编写的C代码.关于通过引用传递的情况已经出现.这是我正在使用的缩短的,人为的例子:
static int b;
void SetToTen(int *a){
b = 10;
/* >>>>>>> Need to set a equal to b on this line <<<<<<<< */
return;
}
int main{
int a = 0;
SetToTen(&a);
/* Now a should be equal to 10*/
.
.
.
return 0;
}
Run Code Online (Sandbox Code Playgroud)
在SetToTen函数中,我可以写:
*a = b;
Run Code Online (Sandbox Code Playgroud)
要么
a = &b;
Run Code Online (Sandbox Code Playgroud)
我认为这两个在功能上是等价的(对于它们中的任何一个,它将等于十.)但我的问题是:是否存在与一个相关的任何偷偷摸摸的微妙之处?具体来说,如果我使用a =&b这是否意味着如果我将来改变b,a也会改变?如果我使用*a = b,情况不是这样吗?
思考/冥想/评论将不胜感激.
我不得不使用以下内容编译一个小的小C程序;
gcc sine.c -o sine -lm
我需要"-lm"因为程序包含了math.h.
在编译器命令下查找它时,man将其显示为-llibrary或-l库.
我找不到任何其他库的信息.math.h显然需要-lm可能还需要其他库命令.
谢谢
嘿!
我想在装配中画线.我用C编写了算法,现在我需要把它放到汇编中.
我是16位实模式; 图形模式:12h(640*480 16色)
C源:
//x1/y1/x2/y2 = start x, start y, end x, end y
void draw_line(int x1, int y1, int x2, int y2)
{
double delta_l = (x2-x1)/(y2-y1);
//delta_l = like graph slope; maybe it's negative and/or not integer
// it can be also type 'float'
double y;
for(int x = x1; x <= x2; x++)
{
y = y1 + ( x * delta_l );
Round_To_Integer(y);
Put_Pixel(x, y, color);
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是我无法计算汇编中的浮点数(或双精度数).
请帮我把这个C代码"翻译"成ASM.
谢谢.