小编BSa*_*nke的帖子

如何检查字符串是否包含Ruby中的子字符串?

我有一个字符串变量,内容如下:

varMessage =   
            "hi/thsid/sdfhsjdf/dfjsd/sdjfsdn\n"


            "/my/name/is/balaji.so\n"
            "call::myFunction(int const&)\n"
            "void::secondFunction(char const&)\n"
             .
             .
             .
            "this/is/last/line/liobrary.so"
Run Code Online (Sandbox Code Playgroud)

在上面的字符串我必须找到一个子字符串即

"hi/thsid/sdfhsjdf/dfjsd/sdjfsdn\n"


"/my/name/is/balaji.so\n"
"call::myFunction(int const&)\n"
Run Code Online (Sandbox Code Playgroud)

我该怎么找到它?我只需要确定子串是否存在.

ruby string

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

带有空格的Java枚举元素?

我正在研究java,我创建了一个枚举如下:

public enum myEnum
{
    india,
    russian,
    england,
    north America
}
Run Code Online (Sandbox Code Playgroud)

上面的示例在元素名称(即北美)中使用空格时会出错.有任何建议如何解决上述问题?

java enums

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

printf()在c中以%p格式打印的地址是哪个?

我的代码如下:

#include<stdio.h>

int glob;

int main(void)
{
   int a;
   printf("&a is : %p \n", &a);
   printf("glob is : %p \n", &glob);
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

上述程序的输出是:首先运行:

&a is : 0x7fff70de91ec
glob is : 0x6008f4
Run Code Online (Sandbox Code Playgroud)

第二轮:

&a is : 0x7fff38c4c7ac
glob is : 0x6008f4
Run Code Online (Sandbox Code Playgroud)

我正在研究虚拟和物理地址.我有以下问题:

  1. 哪个是变量"a"的打印地址(物理/虚拟)?
  2. 如果它是虚拟的那么,它在同一程序的每次运行中如何变化?据我所知,编译器在编译时为变量提供虚拟地址?
  3. 为什么全局变量的地址在每次运行程序中都是常量?

在Linux上执行此程序:2.6.18-308.el5 x86_64 GNU/Linux

编译使用:gcc版本4.1.2 20080704(Red Hat 4.1.2-52)

c linux gcc virtual-address-space

15
推荐指数
3
解决办法
3482
查看次数

如何从Ruby中的String获取第一行?

我在Ruby中有一个字符串变量,如下所示:

puts $varString.class
puts "##########"
puts $varString
Run Code Online (Sandbox Code Playgroud)

上面代码的输出是:

String 
##########
my::FIrst::Line
 this id second line 
 sjdf kjsdfh jsdf 
 djsf sdk fxdj
Run Code Online (Sandbox Code Playgroud)

我只需要从字符串变量中获取第一行(例如my::FIrst::Line).我怎么才能得到它?

ruby

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

如何在Java中添加环境变量?

可能重复:
如何从Java设置环境变量?

我正在研究Java.我必须在java代码编程中添加一个环境变量,这样当我使用流程构建器获取列表时它将可用,如下所示:

import java.util.Map;
import java.util.Set;

class helloworld  {
    public static void main(String[] args) {

        ProcessBuilder pb = new ProcessBuilder("export MY_ENV_VAR=1");

        Map<String, String> envMap = pb.environment();

        Set<String> keys = envMap.keySet();
        for(String key:keys){
            System.out.println(key+" ==> "+envMap.get(key));
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

但是通过上述试验我无法正确获得环境变量.那么如何设置环境变量?

java

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

为什么要使用互斥锁而不是布尔变量进行线程同步?

我正在尝试理解C中的多线程编程.

我怀疑当我们使用MUTEXES进行线程同步时,为什么我们不能使用布尔变量来阻止要执行的代码的关键区域.

布尔变量的静音特性是什么?

PS:实际上这个问题在接受采访时被问到了.所以请分享您对此的了解.

multithreading synchronization mutex boolean

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

如何将内容附加到stringstream类型对象?

我正在使用stringstream的对象如下:

#include<iostream>
#include <istream>

using namespace std;
int main()
{
    sting str="my.string";

    std::stringstream message("HI this is firet line from initialization");

    message << " second line " << " Continueing second line";

    message << ", Add values: ";

    message << str ;


    std::cout<<"message value is :"<<message.str()<<std::endl;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

使用上面的代码,它会给出如下错误:

 error: variable 'std::stringstream message' has initializer but incomplete type
Run Code Online (Sandbox Code Playgroud)

一旦我添加了"#include"头文件,就会解决上面的错误.但是当我打印出消息的价值时.它变得不完整了.即我得到的消息的价值如下:

消息值为:第二行继续第二行,添加值:my.string

关于为什么第一行在输出中删除的任何建议?提前致谢

c++

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

如何杀死linux上的running for循环?

我在Linux上工作,我在Linux终端上执行了for循环,如下所示:

for i in `cat fileName.txt`
do
echo $i
vim $i
done
Run Code Online (Sandbox Code Playgroud)

fileName.txt是一个文件,包含我在vim编辑器中逐个打开的大量文件条目.现在我必须跳过打开其他文件.(即我必须打破for循环).有什么建议如何获得运行for循环的PID?并杀了同样的.提前致谢.

linux pid

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

为什么派生类函数参数取值基类函数参数?

我正在研究C++.以下是我的代码:

#include <iostream>
using namespace std;
class base
{
        public:
        virtual void display(int a = 4)
        {
                cout << "base ::  "<<  a*a << endl;
        }
};

class derived : public base
{
        public:
        void display(int b = 5)
        {
                cout << " Derived :: " << b*b*b <<  endl;
        }
};

int main()
{
        base *bobj;
        derived dobj;
        bobj = &dobj;
        bobj->display();
        return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出是:

Derived :: 64
Run Code Online (Sandbox Code Playgroud)

调用Base类的函数,但使用派生函数的参数的默认值.为什么派生类方法display(),取基类方法参数值?

c++ oop inheritance base-class derived-class

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

如何知道给定的共享库是否使用调试符号构建?

我在x86 Linux上有一些编译库,即共享库(即*.so),我想快速确定它们是否使用调试符号编译(即使用选项-g/debug build).

怎么检查?

linux shared-libraries

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