小编Peo*_*Sea的帖子

这个陈述是否正确?HTTP GET方法始终没有消息体

这个陈述是否正确?HTTP GET方法始终没有消息体.我没有发现RFC2616的任何部分明确说出这一点.

如果不是这样,那么Http GET请求在什么情况下会包含一个消息体

http-headers

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

GCC如何处理内置函数

我无法理解GCC内置函数,感到非常困惑.

  • 库函数和内置函数有什么区别?

  • 是否有内置函数可以做但库函数不能做?

  • 我可以编写一个库函数来执行与内置函数printf相同的任务吗?如何判断输入参数的类型(%f,float还是double)?

  • GCC内置函数的机器指令不存储在库中,对吧?他们在哪?

  • 在进行链接时,如何控制这些内置功能代码的放置位置?

  • 为什么有时我会在进行链接时出现错误消息,例如"未定义引用__builtin_stdarg_start"

    // main.c
    #include <stdio.h>
    int main(void) {
      printf("hello world!\n");
      return 0;
    }
    
    Run Code Online (Sandbox Code Playgroud)

    gcc -c main.c,nm表明main.o中没有符号printf,(只有main(T)和puts(U)),为什么?

c c++ gcc

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

jpeg文件格式问题

我正在尝试使用C从头开始编写JPEG/JFIF编码器和解码器.我尝试编写一个示例JPEG文件,但似乎我无法使用MS paint,Firefox打开它.但我可以使用JPEGsnoop(http://www.impulseadventure.com/photo/jpeg-snoop.html?ver=1.5.2)和http://nothings.org/stb_image.c对其进行解码.我认为样本JPEG文件符合JPEG/JFIF标准,我不知道为什么像MS paint和Firefox这样的应用程序无法打开它.

以下是JPEG示例的样子:


    SOI
       APP0 segment
       DQT  segment (contains two quantization tables)
       COM  segment
       SOF0 segment
       DHT  segment (contains four Huffman tables)
       SOS  segment
       huffman encoded data
    EOI

样本JPEG文件具有三个分量Y Cb Cr.没有Cb Cr组分的子采样.两个量化表都填充了一个.DHT细分市场中的四个霍夫曼表格完全相同,看起来像这样


      [0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0]
      [0,1,2, ... , 254]

这意味着所有代码都是8位,因此霍夫曼编码并不真正压缩数据.

霍夫曼编码数据如下所示:


       [0x0000(DC) 0x0000(AC)](Y)  
       [0x0000(DC) 0x0000(AC)](Cb) 
       [0x0000(DC) 0x0000(AC)](Cr)  for all (i, j) MCUs except (10, 10)

       the data in (10, 10) MCU: 
       [0x0008(DC) …

c compression jpeg file-format image

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

C++ 0x auto无法推导出vector <int>成员函数指针的类型

使用GCC 4.7.0(g ++ -std = c ++ 0x test.cpp)编译以下简单的C++代码会产生编译错误消息:错误:无法从'&std :: vector <_Tp,_Alloc>中推断'auto' :: push_back>'

我的问题是为什么在这个简单的情况下auto不能推断出成员函数指针的类型?

#include <iostream>
#include <vector>

int main(void) {

    // works 
    void (vector<int>::*pb)(const vector<int>::value_type&)
        = &vector<int>::push_back;

    // not work
    auto pbb = std::mem_fn(&vector<int>::push_back);

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

c++ vector auto c++11

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

C/C++/Java问题:for循环中使用的表达式会多次计算吗?

例如,我们有这样的代码:

for (i = 0; i < function(); ++i )
{
   // loop body;
}
Run Code Online (Sandbox Code Playgroud)

是否会为每个循环评估function()?

c c++ java

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

HTML中的http://和//之间有什么区别

我正在使用这个x-editable库,它工作得非常好.但我还有一个问题.

在这个可编辑x的页面中,在使用CDN部分中,您可以看到类似这样的内容

<link href="//cdnjs.cloudflare.com/ajax/libs/x-editable/1.5.0/bootstrap3-editable/css/bootstrap-editable.css" rel="stylesheet"/> 
<script src="//cdnjs.cloudflare.com/ajax/libs/x-editable/1.5.0/bootstrap3-editable/js/bootstrap-editable.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

我测试了一些例子并且它有效.似乎以上两行指示浏览器从http://cdnjs.cloudflare.com获取css和js文件.我的问题是:http:////这里有什么区别.

html x-editable

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

什么时候XmlHttpResponse.responseText会从服务器充满响应?

我写了以下简单的javascript代码

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head> <title>ajax</title> </head>
    <body>
    <script type="text/javascript">
            var xhr = new XMLHttpRequest();
            var url = "http://localhost/javascript/test.php";
            xhr.open("GET", url);
            alert(xhr);
            xhr.send(null);
            xhr.onreadystatechange = function () {alert("change");}
            alert(xhr.responseText);
    </script>
    </body>
    </html>
Run Code Online (Sandbox Code Playgroud)

结果显示xhr.responseText为空.但是以下javascript代码工作正常.为什么?

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head><title>ajax</title></head>
    <body>
    <script type="text/javascript">
            var xhr = new XMLHttpRequest();
            var url = "http://localhost/javascript/test.php";
            xhr.open("GET", url);
            xhr.send(null);
            xhr.onreadystatechange = 
            function () { 
                 if (xhr.readyState == 4) alert(xhr.responseText); 
            };
    </script>
    </body>

    </html>
Run Code Online (Sandbox Code Playgroud)

以下是简单的PHP代码:test.php

    <?php
    echo date("F j, Y, H:i:s");
Run Code Online (Sandbox Code Playgroud)

html javascript ajax

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

为什么这个Go程序这么慢?

我刚刚阅读了Go的一些简短教程,并编写了一个简单的程序筛。Sieve使用sieve算法来打印所有小于10000的质数,这会创建许多go例程。我得到了正确的结果,但是程序非常慢(在我的计算机上为5秒)。我还编写了实现相同算法的lua脚本和python脚本,并且运行速度更快(两者在我的计算机上均为1秒左右)。

请注意,这样做的目的是要了解go例程与其他语言(例如lua)中的协程相比的性能。该实现效率很低,一些评论指出,这不是实现Eratosthenes筛网的正确方法。是的,这是故意的。其他一些答复指出,速度慢是由打印I / O引起的。所以我注释了打印行。

我的问题是为什么我在Go中实现的筛分程序这么慢?这是代码:

package main

import (
  "fmt"
  "sync"
)


type Sieve struct {
  id int;
  msg_queue chan int;
  wg *sync.WaitGroup;
}


func NewSieve(id int) *Sieve {
  sieve := new(Sieve)
  sieve.id = id
  sieve.msg_queue = make(chan int)
  sieve.wg = new(sync.WaitGroup)
  sieve.wg.Add(1)
  return sieve
}


func (sieve *Sieve) run() {
  defer sieve.wg.Done()

  myprime := <-sieve.msg_queue
  if myprime == 0 {
    return
  }
  // fmt.Printf("Sieve (%d) is for prime number %d.\n", sieve.id, myprime)

  next_sieve := NewSieve(sieve.id + 1)
  go next_sieve.run() …
Run Code Online (Sandbox Code Playgroud)

lua go goroutine

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

标签 统计

c ×3

c++ ×3

html ×2

ajax ×1

auto ×1

c++11 ×1

compression ×1

file-format ×1

gcc ×1

go ×1

goroutine ×1

http-headers ×1

image ×1

java ×1

javascript ×1

jpeg ×1

lua ×1

vector ×1

x-editable ×1