小编cap*_*onk的帖子

sqrtf未定义对c中"sqrtf"的引用

你好我使用linux 12.04和geany进行编码.我在C中编写的代码完全正常,直到我使用sqrtf命令查找浮点的平方根.错误:HAC3.c :(.text + 0xfd7):未定义对`sqrtf'的引用.

我正在使用sqrtf的代码部分:

float syn(float *a, float *b, int dimensions)
{
    float similarity=0;
    float sumup=0;
    float sumdown=0;
    float as=0;
    float bs=0;
    int i;
    for(i=0; i<dimensions; i++)
    {
        sumup = sumup + a[i] * b[i];
        as = as + a[i] * a[i];
        bs = bs + b[i] * b[i];
    }
    sumdown = sqrtf(as) * sqrtf(bs);
    similarity = sumup / sumdown;
    return similarity;
}
Run Code Online (Sandbox Code Playgroud)

我包括math.h但这似乎不是问题.所以我想知道有没有办法修复geany所以这不会再出现?我知之甚少所以尽量解释一下.

c linux math.h geany

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

$(event.target).closest().隐藏div的长度并不总是有效.任何替代品?

$(event.target).closest("#divID").length用来隐藏div用户在其外部点击的时间,但是在div可见的情况下我单击日期(datepicker)它将不会隐藏div.

此外,如果我点击<select>有时它隐藏它有时它不会.

有什么更好的解决方案可以在点击其他内容时隐藏div吗?

我的实施错了吗?

ps:#log_in是登录按钮,#log_in_formform我想在外部点击时隐藏的按钮,是#log_in_container包含#log_inand和的div#log_in_form

更新:我刚注意到在Windows 10和Linux ubuntu 16.04上的消失是不一样的.在使用谷歌浏览器使用谷歌浏览器的PC上,表格在第一次点击时消失了(这是理想的功能),但如果我选择日期,它仍然不会消失.虽然在谷歌Chrome上的Linux ubuntu 16.04上,它就像我上面描述的那样(在选择日期时不会消失,并且在你选择的第一次点击时也不会消失)

示例基于Andrei对代码段的回答

$(document).on('click', function(e){
    if($(e.target).closest('#log_in').is('#log_in'))
    {
      $('#log_in_form').fadeIn();
    }
    else if(!$(e.target).closest('#log_in_container').is('#log_in_container'))
    {
      $('#log_in_form').fadeOut();
    }
})
Run Code Online (Sandbox Code Playgroud)
#log_in_container{
  display:inline-block;
  width:122px;
  height:58px;
  margin-left:60px;
  background-color:gray;
}

#log_in{
  display:block;
  width:120px;
  height:28px;
  text-align: center;
  border: 1px solid red;
  font-size:16px;
  background-color:yellow;
  vertical-align: top;
}

#log_in_form{
  display:none;
  position:absolute;
  width:120px;
  height:28px;
  text-align: center;
  background-color: green;
  border: 1px solid …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

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

c ++中字符串的哈希表

我在过去做了一个关于哈希表的小练习,但是用户给出了数组大小,结构也是这样的(因此用户每次都给出一个数字和一个单词作为输入)

struct data
{
   int key;
   char c[20];
};
Run Code Online (Sandbox Code Playgroud)

所以它非常简单,因为我知道数组大小,并且用户也说他将提供多少项作为输入.我这样做的方式是

  • 哈希用户给我的钥匙
  • 在数组中找到位置数组[hashed(key)]
  • 如果它是空的我会把数据放在那里
  • 如果不是我会把它放在下一个自由位置,我会发现.

但现在我必须制作倒排索引,我正在重新研究,所以我可以为它制作哈希表.因此,这些单词将从大约30个字节收集,并且它们将是如此之多.那么在这种情况下阵列需要多长时间?我怎么哈希的话?我应该使用开放地址或链接的哈希.练习sais我们可以使用哈希表,如果我们在网上找到它.但我更喜欢自己理解并创造它.任何线索都会帮助我:)

在这个exerice(使用哈希表的反向索引)中,结构看起来像这样.data type是我将创建的哈希表的类型.

struct posting
{
    string word;
    posting *next
}

struct data
{
    string word;
    posting *ptrpostings;
    data *next
};
Run Code Online (Sandbox Code Playgroud)

c++ hashtable hashmap

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

Bison-Flex extern FILE *yyin 不工作(C 语言)

我知道在 flex 中你只需要yyin = fopen(filename, "r");读取一个文件,但是如果你想从 bison 中读取它怎么可能呢?我正在尝试将 flex 和 bison 结合使用(读取文件4 + 5 + 7;并打印结果),但我很难尝试从 bison 打开文件。我试图extern FILE *yyin在申报室使用,然后yyin = fopen(filename, "r");我得到了错误:

C2065:'yyin':未声明的标识符。

这是我的代码,以防万一它有助于找到它。

野牛代码:

%{
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
extern FILE *yyin;
int yyerror(char *message)
{
    return 0;
}
%}

%union {
 double val;
 char sym;
}   
%token <val> NUMBER
%token <sym> PLUS Q_MARK
%type <val> addition_list addition
%start addition_list
%%

addition_list : addition Q_MARK  {printf("apotelesma: %d\n", $1);} …
Run Code Online (Sandbox Code Playgroud)

c parsing bison lexical-analysis flex-lexer

5
推荐指数
0
解决办法
9239
查看次数

指针和结构

这是我的问题......我有这个代码(创建一个列表)

typedef struct node
{
    int pid;
    int runtime;
    struct node *next;
}job;

int main()
//code
job *first = NULL;
job *last = NULL;
job *newnode;
//code
//from here
if( first == NULL )
{
     first = last = newnode;
     newnode->next = NULL;
}
else
{
     last->next = newnode;
     last = last->next;
}
// to here
Run Code Online (Sandbox Code Playgroud)

所以我想在这里做一个函数之间的部分(所以看起来会更好)我做了这个...我创建了一个函数

void funct(job ** pfirst, job **plast, job*newnode);
Run Code Online (Sandbox Code Playgroud)

在主要而不是我使用的强大部分:

 funct(&first, &last, newnode);
Run Code Online (Sandbox Code Playgroud)

功能是这样的

void funct(job ** pfirst, job **plast, job*newnode)
{
   if(*pfirst == NULL) …
Run Code Online (Sandbox Code Playgroud)

c struct pointers

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

迭代器错误C2440

我正在尝试制作一个小的哈希程序,但有一个错误,我不知道如何处理.问题出在箭头上,这是错误:

错误1错误C2440:'初始化':无法从'std :: _ St​​ring_const_iterator <_Elem,_Traits,_Alloc>'转换为'std :: _ St​​ring_iterator <_Elem,_Traits,_Alloc>'

我的代码:

#include <iostream>
#include <string>
#include <iterator>
using namespace std;

unsigned long hash(const string& str);

int main()
{
   long out;
   string word;
   word = "about";
   out = hash(word) % 255;
   cout << out;
   system("pause");
   return 0;
}


unsigned long djb2(const string& str)
{
    unsigned long hash = 5381;

    for(string::iterator it=str.begin();it!=str.end();it++)  //<~~~~~~~~~~
        hash = ((hash << 5) + hash) + *it; /* hash * 33 + character */

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

c++ iterator visual-studio-2008

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

p周围的堆栈已损坏c ++

它一定很简单,但我现在很麻木,想清楚.所以这只是我代码的一小部分,除此之外一切正常.我真正想做的是infile1.open(temp2-> path); 但由于temp2是一个字符串,所以不可能.所以我想将这个字符串放入char数组[100]中的char数组中,以使用infile1.open(p).它编译但经过几秒钟的繁荣:p周围的堆栈已损坏

   char p[100];
   while( temp2 != 0)
   {
        stringToCharArray(temp2->path, p); 
        infile1.open(p);
        checkingWords(infile1, stopWords, invertedIndex);
        infile1.close();
        temp2 = temp2->next;
   }


void stringToCharArray(string s, char *c)
{
    int i;
    int size = s.size();
    for( i=0; i<=size ; i++)
    {
        c[i] = s[i];
    }
}
Run Code Online (Sandbox Code Playgroud)

c++ string char

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

Java摆动JButton的顺序和大小

我正在尝试用java swing创建一个棋盘游戏,但我对布局感到非常困惑.目前我正在尝试创建用户看到的图像.为了做到这一点,我使用了BorderLayout(我只需要使用Border-grid-flow布局),我认为我会在东南西北部放置一些工作人员,并在中心放置基本板.问题是我必须创建使用JButton移动棋子的路径(其余空间应该留空)并且该路径需要具有特定的十字形状:http://i59.tinypic.com/eileys.png和尺寸应该比平常小.对于初学者,我尝试使用带有gridlayout的JPanel(放入中心),但无论我做什么(如setPreferredSize()),按钮都会调整大小以填充空间.这是我的代码.感谢您的时间,任何提示都会有所帮助!编辑:

package projtest1;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Board extends JFrame
{
    public Board()
    {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setTitle("Border Layout");
        setMinimumSize(new Dimension(1280, 768));
        setSize(1280, 768);  
        JPanel contentPane = new JPanel();
        contentPane.setLayout(new BorderLayout());
        contentPane.add(new JButton("North"), BorderLayout.NORTH);
        contentPane.add(new JButton("South"), BorderLayout.SOUTH);
        contentPane.add(new JButton("West"), BorderLayout.WEST);
        contentPane.add(new JButton("East"), BorderLayout.EAST);
        JPanel buttonPanel = new JPanel();
        buttonPanel.setLayout(new GridLayout(3, 1, 1, 1));
        buttonPanel.setSize(new Dimension (800,800));
        JPanel topButtonPanel = new JPanel();
        JPanel middleButtonPanel …
Run Code Online (Sandbox Code Playgroud)

java swing jbutton layout-manager

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