小编Bet*_*moo的帖子

是否可以从gcc中的C源代码内部链接到数学库?

当我试图包括<math.h>我发现我需要使用命令链接数学库gcc -lm

但我正在寻找另一种方法来链接数学库'代码',这不需要用户使用任何选项进行编译.

可以gcc -lm在C代码中使用#pragma什么做什么?

编辑:我已经改变-ml以-lm

c unix gcc include

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

C#自定义数据类型!

可能重复:
.Net中的Int128?

在我决定在C#中实现我的Int128后,我认为让它看起来像其他dotNet数据类型会很好..但我无法实现以下功能:

  • 后缀初始化:如13L和0.2D

我可以在C#中创建自己的后缀吗?
如果我不能......我怎么能初始化它?
即

Int128 a= ??
Run Code Online (Sandbox Code Playgroud)

c# constructor types int128

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

C++条件运算符

我曾经见过C++,其分配值的-wired-操作者如果比..更大
它的组合?,<和=

例如,如果value大于x,则x = value

我不是故意的 x=(x<value)x:value

这是某种形式 x<?=value

但我完全记不起来了,也无法在网上找到它......有人能提醒我吗?

谢谢,

c c++ operators conditional-operator

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

类析构函数问题

我正在创建一个包含StreamWrite的简单类

    class Logger
{
    private StreamWriter sw;
    private DateTime LastTime; 
    public Logger(string filename)
    {
        LastTime = DateTime.Now;
        sw = new StreamWriter(filename);
    }
    public void Write(string s)
    {
        sw.WriteLine((DateTime.Now-LastTime).Ticks/10000+":"+ s);
        LastTime = DateTime.Now;
    }
    public void Flush()
    {
        sw.Flush();
    }
    ~Logger()
    {
        sw.Close();//Raises Exception!
    }
}
Run Code Online (Sandbox Code Playgroud)

但是当我在析构函数中关闭此StreamWriter时,它引发了StreamWriter已被删除的异常?

为什么?以及如何使其工作,以便在删除Logger类时,StreamWriter在删除之前关闭?

谢谢!

c# resources dispose destructor

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

C#中的数组数组

  • 我需要知道如何在C#中初始化数组数组.
  • 我知道存在多维数组,但我认为在我的情况下我不需要它!我试过这段代码..但是不知道怎么用初始化列表初始化..

    double [] [] a = new double [2] []; // = {{1,2},{3,4}};

谢谢

PS:如果你想知道我为什么使用它:我需要数据结构,当我调用obj [0]它返回一个数组..我知道它很奇怪..

谢谢

c# arrays multidimensional-array initializer-list

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

这两个例外中的哪一个被称为?

如果我有一个可以在两个地方抛出ArgumentException的例程,比如...

if (Var1 == null)
{
    throw new ArgumentException ("Var1 is null, this cannot be!");
}

if (Val2  == null)
{
    throw new ArgumentException ("Var2 is null, this cannot be either!");
}
Run Code Online (Sandbox Code Playgroud)

在我的调用过程中确定抛出两个异常中的哪一个的最佳方法是什么?

要么

我是以错误的方式做这件事吗?

.net c# asp.net exception-handling

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

C#Dictionary中的下一个键

如何Enumerator使用密钥获取-Sorted-字典中的项目?

注意:GetEnumerator()获取Enumerator第一个元素..

但我需要Enumerator使用给定的密钥来获取元素,MoveNext()以便例如使用... 来访问下一个元素...

编辑:或者访问下一个元素的方法......

编辑:我更喜欢const time方法......

谢谢

.net c# dictionary enumerator

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

使用正则表达式无法匹配字符串

我正在研究一些正则表达式,我想知道为什么这个正则表达式

"(?<=(.*?id(( *)=)\\s[\"\']))g"
Run Code Online (Sandbox Code Playgroud)

与字符串不匹配

<input id = "g" />
Run Code Online (Sandbox Code Playgroud)

在Java?

java regex

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

二维数组中的二分搜索

我想知道,二分搜索 可以应用于二维数组吗?

  • 阵列上的条件是什么?二维排序??
  • 它的时间复杂度是多少?
  • 算法将如何改变搜索的边界(minX,maxX,minY,maxY) ?

编辑:

1D 上的二分搜索维护 2 个指针minX和maxX.. 它选择中间索引(minX+maxX)/2并将其与搜索值进行比较,如果大于则更改maxX,否则更改minX... 直到minX>=maxX

普通二进制搜索的伪代码:

 min := 1;
  max := N; {array size: var A : array [1..N] of integer}
  repeat
    mid := min + (max - min) div 2;
    if x > A[mid] then
      min := mid + 1
    else 
      max := mid - 1;
  until (A[mid] = …
Run Code Online (Sandbox Code Playgroud)

algorithm binary-search multidimensional-array

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

C++ OpenMP程序

我试图使用以下代码在C++程序中获得并行效果:

#include<iostream>
using namespace std;

int main()
{

#pragma omp parallel sections
    {
#pragma omp section
        {
        cout<<"Hello";  
        cout<<" ";  
        cout<<"World";  
        cout<<endl;

        }
#pragma omp section
        {
        cout<<"H";
        cout<<"ello";
        cout<<" W";
        cout<<"orld";
        cout<<endl;
        }
#pragma omp section
        cout<<"Hello"<<" "<<"World"<<endl;
#pragma omp section
{       cout<<"Hello ";
        cout<<"World"<<endl;
}
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我多次运行这个程序..由于并行性,我期待交错输出.

但是,每次运行此程序时,输出为:

Hello World
Hello World
Hello World
Hello World
Run Code Online (Sandbox Code Playgroud)

难道我做错了什么?

谢谢

c++ openmp

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