小编Dav*_*yon的帖子

OCaml中的用户定义的打印机

printf,fprintf等等:都接受%a转换.

手册说%a:

"用户定义的打印机.使用两个参数并将第一个参数应用于outchan(当前输出通道)和第二个参数.因此,第一个参数必须具有类型out_channel - >'b - > unit和第二个'b.因此,函数产生的输出被插入到当前点的fprintf输出中."

我无法理解用户定义的打印机的用途,以及如何实现和使用它.有人可以解释动机并提供一个例子吗?

例如,当您想要打印复杂的数据结构时,为什么不能直接将自定义函数的数据结构打印到字符串或输出?

printf ocaml pretty-print

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

单链表是否是回文

我有一个单链接列表.我想知道链接列表是否是Palindrome.我已经以下面的一种方式实现了它.

bool palindromeOrNot(node *head) {
  node *tailPointer;
  node *headLocal=head;
  node *reverseList=reverseLinkedListIteratively(head);
  int response=1;

  while(headLocal != NULL && reverseList!=NULL) {
    if(headLocal->id==reverseList->id) {
      headLocal=headLocal->next;
      reverseList=reverseList->next;
    }
    else
      return false;
  }

  if(headLocal == NULL && reverseList==NULL)
    return fasle;
  else 
    return true;
}
Run Code Online (Sandbox Code Playgroud)

我正在反转原始链接列表,然后比较Node by Node.如果一切都很好,那么我将返回1,否则返回0.

有没有更好的算法来解决这个问题.

linked-list

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

Classic C.在execvp函数,stdin和stdout重定向中使用管道

我想使用管道和execvp函数在我的Linux C程序中模拟bash.例如

ls -l | wc -l  
Run Code Online (Sandbox Code Playgroud)

有我的计划:

if(pipe(des_p) == -1) {perror("Failed to create pipe");}

if(fork() == 0) {    //first fork
  close(1);          //closing stdout
  dup(des_p[1]);     //replacing stdout with pipe write 
  close(des_p[0]);   //closing pipe read
  close(des_p[1]);   //closing pipe write

  if(execvp(bash_args[0], bash_args)) // contains ls -l
    /* error checking */
}
else {
  if(fork() == 0) {  //creating 2nd child
    close(0);        //closing stdin
    dup(des_p[0]);   //replacing stdin with pipe read
    close(des_p[1]); //closing pipe write
    close(des_p[0]); //closing pipe read

    if(execvp(bash_args[another_place], bash_args)) //contains wc -l …
Run Code Online (Sandbox Code Playgroud)

c redirect fork execvp

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

如何使用Angular将JSON和文件发布到Web服务?

如何使用AngularJS发送POST请求?JSON部分是必需的,但文件不是.我已根据其他博客文章尝试了这一点,但它不起作用.我收到错误请求400错误.

将添加200点正确答案

var test = {
  description:"Test",
  status: "REJECTED"
};

var fd = new FormData();
fd.append('data', angular.toJson(test));

return $http.post('/servers', fd, {
  transformRequest: angular.identity,
  headers: {
    'Content-Type': undefined
  }
});
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

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

如何衡量FLOPS

如何测量FLOPSIOPS?如果我测量普通浮点加法/乘法的时间,它是否相当于FLOPS?

c++ performance benchmarking flops

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

当菜单项的可见性设置为 false 时,它​​会留下一个空白空间

我有一个功能,我需要一个菜单​​项在searchView展开时出现并在searchView关闭时消失。展开时,我已将该项目的setVisible 设置为 false,它使菜单项在返回到searchView 的折叠状态时消失,但它留下了一个空白区域。

截图:

有没有什么选项可以让searchView图标回到原来的位置?

SearchManager searchManager =(SearchManager)getSystemService(Context.SEARCH_SERVICE);
    final MenuItem menuitem=menu.findItem(R.id.action_search);
    final MenuItem locationitem=menu.findItem(R.id.action_location).setVisible(false);
    SearchView searchView = (SearchView) menuitem.getActionView();
    if(null!=searchManager ) {
        searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
    }
    searchView.setIconifiedByDefault(true);   //if using on actionbar
    searchView.setClickable(true);
    searchView.setOnSuggestionListener(new SearchView.OnSuggestionListener() {
        @Override
        public boolean onSuggestionClick(int position) {
            // Your code here
            return true;
        }

        @Override
        public boolean onSuggestionSelect(int position) {
            // Your code here
            return true;
        }
    });
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String …
Run Code Online (Sandbox Code Playgroud)

android menu android-actionbar searchview

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

如何修复selenium-webriver错误 - $未定义?

我正在尝试向按钮添加事件:

str = "a#fCoverage" // my locator
def str2 = "\$('" + str + "').addEventListener('click', function(){alert('text')});" // add event
js.exec(str2)
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误:

错误:org.openqa.selenium.WebDriverException:未知错误:$未定义

有人可以帮帮我吗?

javascript java groovy selenium selenium-webdriver

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

未定义的对'round'c语言的引用

我正在使用那些进口商品

#include <stdio.h>
#include <math.h>
Run Code Online (Sandbox Code Playgroud)

我在这一行得到了未定义的'round'引用:

double res = round(atof(nextVal));
Run Code Online (Sandbox Code Playgroud)

nextVal是从文件读取的double值.

我正在使用Eclipse INDIGO.

c eclipse compiler-errors

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

分割断层

这是我的代码:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

void main(int arge, char *argv[])
{
    FILE *f1;
    char ch,*fn="~/lyrics/";
    strcat(fn,argv[1]);
    strcat(fn,".txt");
    if( (f1 = fopen(fn,"r"))==NULL )
    {
        printf("\nWrong filename\n%s not found",argv[1]);
        return;
    }
    while((ch=getw(f1))!=EOF)
    {
        printf("%c",ch);
    }
}
Run Code Online (Sandbox Code Playgroud)

我使用对其进行gcc -g -o file file.c了编译,并且编译器未给出任何错误消息。但是当我运行它时,我收到错误消息:

Segmentation fault (core dumped)
Bad permissions for mapped region at address 0x8048659 at 0x402C36B: strcat 
(in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) by 0x80484D6: main (lyrics.c:9)
Run Code Online (Sandbox Code Playgroud)

谁能帮帮我吗?

c valgrind segmentation-fault

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

在 c 中多次读取 /proc/stats

我想在几秒钟内多次阅读 /proc/stats 。作为一个例子,我会使用:

fp = fopen ("/proc/stats", "r");
while (1){
  fseek(fp,0,SEEK_SET);
  for(i=0 ; i<5 ; i++) {
    fgets(buff, LINE_BUFFER, fp);
    buff[strlen(buff)-1] = '\0'
    printf("Line <%s>\n", buff);
  }
  sleep (0.2);
}
Run Code Online (Sandbox Code Playgroud)

但显然我总是得到相同的价值。我是否需要关闭并重新打开文件才能看到更改?

谢谢

c linux operating-system

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

如何通过 Linux 中的 perf 工具捕获 L3 缓存命中和未命中

有什么方法可以通过 Linux 中的 perf 工具捕获 L3 缓存命中和未命中。根据 的输出perf list cache,支持 L1 和 LLC 缓存。根据perf源码中perf_evsel__hw_cache数组的定义:

const char *perf_evsel__hw_cache[PERF_COUNT_HW_CACHE_MAX]
                                [PERF_EVSEL__MAX_ALIASES] = {
 { "L1-dcache", "l1-d",         "l1d",          "L1-data",              },
 { "L1-icache", "l1-i",         "l1i",          "L1-instruction",       },
 { "LLC",       "L2",                                                   },
 { "dTLB",      "d-tlb",        "Data-TLB",                             },
 { "iTLB",      "i-tlb",        "Instruction-TLB",                      },
 { "branch",    "branches",     "bpu",          "btb",          "bpc",  },
 { "node",                                                              },
};
Run Code Online (Sandbox Code Playgroud)

LLC 是 L2-cache 的别名。我的问题是如何通过 Linux 中的 perf 工具捕获 L3 缓存命中和未命中。提前致谢!

linux cpu caching perf

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

如何在悬停时使用 CSS 反转颜色

我正在尝试使用 CSS 样式制作交互式购物车按钮。我希望我的“添加到购物车”按钮在悬停时反转颜色(仅限黑色和白色)以增强用户体验。

CSS样式:

.ryanAddButton {
  display:       inline-block;
  padding:       8px 0px;
  width:          390px;
  background:    -moz-linear-gradient(#000, #000);
  background:    -o-linear-gradient(#000, #000);
  background:    -webkit-linear-gradient(#000, #000);
  background:    linear-gradient(#000, #000);
  color:         #fff;
  font:          normal 700 20px/1 "Calibri", sans-serif;
  text-align:    center;
  text-shadow:   1px 1px 0 #000;
}
ryanAddButton:hover {
  background-color:white;
  color:black;
}
Run Code Online (Sandbox Code Playgroud)

按钮的 HTML 片段:

<p  class ="ryanAddButton">Add to Cart</p>
Run Code Online (Sandbox Code Playgroud)

css

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

在Switch语句中使用2个变量

import java.util.Scanner;

class Test {
  public static void main(String args[]) {
    String charr;

    try{    
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter the Value ");

      charr = sc.next();
      switch (charr +"|"+ charr) {
        case "a|A" : System.out.println("a | A"); break;
        case "b|B" : System.out.println("b | B"); break;
        case "c|C" : System.out.println("c | C"); break;
        case "d|D" : System.out.println("d | D"); break;
        default:  System.out.println("You are doing it wrong");
      }
    } catch(java.util.InputMismatchException e) {
      System.out.println("Exception thrown :" + e);
    }

    System.out.println("Out of Block");
  } …
Run Code Online (Sandbox Code Playgroud)

java switch-statement

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