小编Jas*_*son的帖子

解密qsort行为

我需要qsort的功能才能运行我的程序,到目前为止还没有完成它的工作.

我基本上是对单个字符值数组进行排序,以便将它们聚合成组,这样我就可以遍历数组并确定每个属性的计数.我的问题是qsort返回一个"已排序"的数组

xxxxxbxbbbxfbxfbffffbxfxbbfbbbxxfxbxxfbbbbxbfxbxfbxbsxbbbxxbbxxffxbxfxfxbxxbxxfbbbfbxbbx
bbbsxfxbxbxxbfbfxbxxbxxbfxxbxsbfxxfxfxfffxbfxffbbfffsxsfbfbxbxbbbxxsbfbfbbbbbbxxfxfxffxf
xbxxbxfxbfbxbxxbxbxxbxbbffxxbxxffxxbxfxbxffxfsfxxfxxfxxfxfxxfxxbsxxbbbxsxxbbxxxbxfxsbxxx
ffbxfxxffbxxxfxxfxxfxfxxfffbxxxbxxxfffxsbbfffffxxxbbfxsbffxbxxfxbxxfbbfsbffsfffxfxfxbbffx
bxxfxbxxfxbbbfxxbbfxxbbbsxbxfbfbbxxbbfffxxfxxbbbfxxbxxxbbxxxbfxffxxxffxfxxffbxfsxbxxxfxfx
fsbbbxxxbfxfffsfxxxfssxxxfxfxxxxbxbbbxxbxxxxxxxxxxxxxxxxxxxfbfxxffxxbxxxxxxxsxsxxxxxxxxsxb
bxxxxxfxbxxxxfxxfxxxxxbbxfffbxbsxffbbbxsfbbfffbxbfbbxxbxxbbxxbffxfxxfxfbbxxbxfxxsfxxfxxbxf
xxbxxxbxbxbbxbbffxxxxbfbfxxxxxxfxffxxxxxxxxxxxxxxxxxxxxxbxffxbxbxbbxbbxxfbxfxbxxbxxbxbxxxb
xxbxbxbfbbffffffsbbxxbffbxfxxfxbfbfffsxbxxxsxxbbbbbxxxbxxxfxxfffxxxxxxxxxxxxxfxxbxxxxxxxxx
xxbfbxxxxxxxxxxxxxxxxxxxxxxxxxxbxbxxxxxfxxbxxxxffxbxxxxffxfbfffxbxxfxbfxbxxfxbxbfxxxxxfxbx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxsbxxxxffxfxxxxxxxxxfxfxxxbffffxxxfbxbxfxxxxxxxxxxxxxxxxxxxxf
fxfxbfxxxfxxxxx
Run Code Online (Sandbox Code Playgroud)

我认为这个问题与我的函数调用或比较方法有关.

int compare(const void *a, const void *b){
  return *(char * const *) a - *(char * const *) b;
}
Run Code Online (Sandbox Code Playgroud)

并用于

qsort(temp, lineCount, sizeof(char), compare);
Run Code Online (Sandbox Code Playgroud)

where temp是上面的字符数组,是数组中的字符lineCount数.通过测试验证了阵列的完整性以及尺寸.

任何帮助是极大的赞赏.

c qsort

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

配置git以允许cli push/pull而不输入密码 - netrc被忽略了吗?

我刚刚开始了一份合同工作,并在公司的git存储库中拥有一个帐户.问题是,给出的密码是字母数字乱码,所以我想配置git以允许在我的Ubuntu开发盒上减少密码的推/拉.

为此,我创建了一个.netrc具有0600权限的文件$HOME并添加了

machine companyserver.com
login jason
password aphanumeric_gibberish
Run Code Online (Sandbox Code Playgroud)

git clone命令由

git clone jason@git.companyserver.com:/opt/git/jason.git 
Run Code Online (Sandbox Code Playgroud)

甚至在删除我的本地工作副本并重新克隆git repo之后

/media/storage/code_projects/company_working_copy
Run Code Online (Sandbox Code Playgroud)

我仍然会收到提示输入密码的提示.

基于这些条件,我如何实现无密码的推/拉使用.netrc

git

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

内部javascript清除功能

我有两个用于复制数据对象的javascript对象.它们通过onclick事件填充,我想在保存事件后清除它们.

例如,

var currentStrategy = {
  id : "",
  label : "",
  dueDate : "",
  comments = [],

  save : saveStrategyHandler,
  clear : function() {
    //how do I clear the fields above in here?
  }
}
Run Code Online (Sandbox Code Playgroud)

我试过了

function(){
  id = "";
  label = "";
  dueDate = "";
  comments = [];
}
Run Code Online (Sandbox Code Playgroud)

function(){
  currentStrategy = {};
}
Run Code Online (Sandbox Code Playgroud)

但都没有工作.

javascript

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

捕获异常后是否可以调用main(String [] args)?

我正在研究一个Serpinski三角形程序,它要求用户绘制三角形的水平.为了防止我的程序出现白痴,我把它放在:

Scanner input= new Scanner(System.in);
System.out.println(msg);
try {
    level= input.nextInt();
} catch (Exception e) {
    System.out.print(warning);
    //restart main method
}
Run Code Online (Sandbox Code Playgroud)

如果用户用字母或符号打孔,是否有可能在捕获到异常后重新启动main方法?

java exception-handling

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

使用无效输入时的Segfault

-help在命令参数中使用无效输入或标志时,我收到了段错误.它是Unix expand实用程序的重新创建,它应该以类似的方式处理错误.

int main(int argc, char *argv[]){

  char help1[]= "-help";
  char help2[]= "--help";

  int spaces; //number of spaces to replace tabs

  if (argc==1){ //if only one argument in stack

    //check if asking for help
    if ( (strcmp(argv[1], help1)==0) || (strcmp(argv[1], help2)==0) )
      printHelp(); 

    else
      printError(); //otherwise, print error message    

    //right number of tokens are provided, need to validate them
    } else if (argc>=2){
      spaces= atoi(argv[2]); //assign it to spaces

      parse_file(spaces); //open the stream and pass on
  }     
  return …
Run Code Online (Sandbox Code Playgroud)

c unix segmentation-fault

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

使用make&C确定多个文件编译

对于一个项目,我正在与一个合作伙伴一起编写决策树实现.由于我们都是C的相对新手并且必须快速工作,我们基本上将所有功能转储到单个文件中,最终超过1600行.这是一个快速而又肮脏的项目,但是现在下一个任务让我们负责扩展和重新实现代码.在目前的情况下,这是不会发生的.

现在,我正在根据职能责任分解原始来源.事实是,许多功能交织在一起,我的make文件出现重大错误.更具体地说,其他源文件报告在单独文件中声明的函数的隐式声明.

我真的没有多个文件makefile的经验.当前的语法是在去年的系统编程类中从简单的shell实现中借用的,尽管这个当前项目的复杂性要高出一个数量级.

cc= gcc
CFLAGS= -g -Wall -lm

proj2: main.o split.o tree.o id3.o output.o 
  $(CC) $(CFLAGS) -o proj2 main.o split.o tree.o id3.o output.o
Run Code Online (Sandbox Code Playgroud)

我还尝试了以前的版本,其中每个目标文件都是单独编译的

main.o: main.c split.c tree.c id3.c output.c
  $(CC) $(CFLAGS) -o main.c split.c tree.c id3.c output.c
Run Code Online (Sandbox Code Playgroud)

并重复.o为每个源创建一个文件,然后将其编译为可执行文件.

但是,这没有用,我得到了大约500行编译器投诉和警告,主要是关于隐式函数声明.

所以,基本上我有两个相关的问题:

  • 是否有可能在不同的源文件之间交织函数调用?
  • 如果是的话,我怎么能在这里成功呢?

c compiler-errors makefile

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

解释Python代码片段

对于课堂作业,我正在分析亚马逊的Kindle数字版权管理实施如何运作以及如何打败它.在我的研究中,我遇到了一组Python脚本,它们从加密中提取出书籍数据.它符合我解释我论文中加密破解部分的需要.

问题是,我不熟悉Python或者除了之外还有其他任何经验print 'Hello World'.

在浏览源代码的过程中,我遇到了这个片段

def __init__(self, infile):
    # initial sanity check on file
    self.data_file = file(infile, 'rb').read()
    self.mobi_data = ''
    self.header = self.data_file[0:78]

    if self.header[0x3C:0x3C+8] != 'BOOKMOBI' and self.header[0x3C:0x3C+8] != 'TEXtREAd':
        raise DrmException("invalid file format")

    self.magic = self.header[0x3C:0x3C+8]
    self.crypto_type = -1
Run Code Online (Sandbox Code Playgroud)

我对代码的解释如下:

  1. self.data_file是一个read()file(infile, 'rb')调用时返回的字节数组.
  2. self.header 是数据文件的前79个字节的值

我遇到的问题是什么self.header[0x3C:0x3C+8]意思?

python

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

从字符串创建日期对象的更简单方法

我正在处理图像上传实用程序,部分功能是解析图像的IPTC和EXIF数据.

IPTCInfo获取我需要的信息,但日期字段的格式为20130925.

现在,我可以将该整数分解为2013 09 25并创建一个date对象.在我这样做之前,是否已经存在解决此问题的功能?

python datetime

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

Java:对象中的数组属性

我是Java编程的新手,只是想知道你是否可以这样做:我有一个对象类Person:

public class Person {

    public String name;
    public String[] friends;
}
Run Code Online (Sandbox Code Playgroud)

如果是,如何初始化它,即

newPerson.name = "Max"; 
newPerson.friends = {"Tom", "Mike"};
Run Code Online (Sandbox Code Playgroud)

我尝试这样做,但它不起作用.

java arrays class object

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

未找到文件异常-从jar执行时资源文件夹中的数据文件引发异常

我有一个Swing应用程序,试图将其打包到可运行的JAR文件中。它的DAO功能的一部分是以CSV格式读写内部的.dat文件src/main/resources/dictData.dat

我的问题是,每次尝试运行jar时,我都会

java.io.FileNotFoundException: file:/Users/jason/projects/test-dict/target/
    dictionary-jar-with-dependencies.jar!/dictData.dat 
    (No such file or directory)
Run Code Online (Sandbox Code Playgroud)

从命令行。这是通过一个罐子mvn packagemaven-assembly-plugin规格

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.4.1</version>
            <configuration>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
                <archive>
                    <manifest>
                        <mainClass>com.test.dictionary.init.AppInit</mainClass>
                    </manifest>
                </archive>
            </configuration>
            <executions>
                <execution>
                    <id>make-assembly</id>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
Run Code Online (Sandbox Code Playgroud)

我有一个FileIO类实现,可以处理对文件的读写。

public class FileIO implements IO{

    private static final String DICTIONARYFILE = "dictData.dat";
    private File dataFile;
    private Writer dataWriter;
    private Reader dataReader;

    @Override
    public Map<String, Word> loadDataFile(){
        ClassLoader classLoader = getClass().getClassLoader();
        Map<String, Word> dictMap = new HashMap<>();

        try { …
Run Code Online (Sandbox Code Playgroud)

java jar executable-jar maven

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