在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/ C問答
哎呦喂 回答

@course.comments.sum{ |cc| cc.comment.length }

枕頭人 回答

這是IEEE 754的規(guī)定.float的二進制表示被分為三部分

  • 符號(1位)
  • 階碼(8位)
  • 尾數(shù)(23位)

為了計算機更好的比較浮點數(shù),所以階碼是無符號數(shù),0<階碼<255.其中0(00000000)和255(11111111)有特別含義看,所以用到的范圍實際是1<階碼<254.然后規(guī)定了一個偏置碼(bias value),大小為127,階碼的值(指數(shù))=階碼無符號數(shù)-偏置碼(127)

  • 1-127=-126
妖妖 回答

不明白你的問題,意思是沒取到cookie還是不應該取到cookie但是取到了

我認為使用define的最大價值在于是否可以將大段的重復性代碼濃縮為define,后續(xù)使用可能用一個宏就解決大段的重復性代碼。比如mfc中的消息映射,成功的將很多重復性的代碼濃縮為一兩個宏,雖然mfc本身很復雜,但是它的宏定義的使用堪稱教科書。其他常用的使用場景比如定義不定長的函數(shù),你給出的這個例子就是。比如與操作系統(tǒng)和編譯環(huán)境有關的,比如__FILE__,__LINE__,DEBUG等。至于你講的可能的代替,我認為是定義常量、定義簡單的函數(shù)等。

瘋子范 回答

當然有意義。
你覺得你用不到,很多時候是框架幫你做了這些事情。
我舉幾個例子

  • 怎么判斷是 ajax 請求,是不是需要 http header 的信息
  • 怎么判斷請求是 post、get、put ?
  • 怎么設置 cookie

誠然,其實不用這些標準也能實現(xiàn)很多東西,但是我們?yōu)槭裁凑f面向接口編程,就是不需要知道實現(xiàn)細節(jié),也能很好的使用。

故人嘆 回答

如果生成操作比較耗時,可以通過異步處理, 即把生成的文件以用戶為單位保存成列表,然后在生成功能時以某種方式,(可以是websocket,也可以是輪詢)等處理完了,彈出文件下載列表。至于服務器端成的文件,可以通過servlet或者nginx等直接提供下載即可。

六扇門 回答

一般情況下不要#include.c文件?。?!
在編譯的時候,首先工作的是預處理器,預處理器將#include展開成對應文件的內(nèi)容,這里你的SeqList.c文件里的函數(shù)定義就會被放進main.c中。
接著編譯器會實際編譯被預處理器處理過的main.cSeqList.c,然后就得到了兩份SeqList.c中的函數(shù)定義對應的匯編/機器碼。
接著會鏈接,有兩組名字一樣的函數(shù)定義,自然就鏈接不上了……
解決方案就是另外做一個SeqList.h放函數(shù)的聲明,然后#include .h文件
Linux不會報錯大概是編譯器的容錯機制做的好吧……

別逞強 回答

autolayout的話,如果你是在一個viewController里面,一般是在viewDidLayoutSubviews才能生效,如果是一個view的話,一般則在layoutSubviews里面才生效

淚染裳 回答

&的用意我只知道除了是引用和位址之外,它還有一個功能就是防止拷貝(比較有效率)。

void swap(int &a, int &b)

void swap(int a, int b)

的差別是一個是整數(shù)a b的本身,另一個是整數(shù)a b的副本。如果你使用第二個swap函數(shù)來進行交換整數(shù)的話,你會發(fā)現(xiàn)沒有換到。因為你所處理的只是在副本上進行交換整數(shù)而已,它本身的自己卻沒有更動到。


Box operator+(const Box& b)
    {
        Box box;
        box.length = this->length + b.length;
        box.breadth = this->breadth + b.breadth;
        box.height = this->height + b.height;
        return box;
    }

知道了&的一些概念后,你可能會問為什么 Box& b前面要放 const!
因為你知道 &會改變對象本身,然后我們只是想用b里面的變數(shù)且不想更動到它們,所以前面加const的用意是防止改變對象!

總結來說,const B &b 達到了無副本 + 無法修改的目的。

執(zhí)念 回答
    new->next = head->next;
    head->next = new;
    head = head->next;
    new = malloc(sizeof(struct ListNode));

運行中,此四行構造出一循環(huán)鏈表。故addTwoNumbers函數(shù)退出后,判定程序在打印結果時死循環(huán)。

萌二代 回答

簡單的項目可以用自適應,復雜點的,我覺得應該分開寫

墨小白 回答

sem_init函數(shù)入?yún)⑿枰獋魅虢Y構體地址,即sem_t mutex;
sem_init(&mutex);

還有看到你buffer定義是數(shù)組指針,但感覺初始化是按照字符數(shù)組初始化的。

賤人曾 回答

set里,只有值和引用地址都完全相同,兩個元素才算是一樣的

檸檬藍 回答

已解決
return parent::render($e);
上面沒有把參數(shù)傳遞進去

玩控 回答

傳入可變參數(shù)時,用 PyTuple_Size() 獲取參數(shù)個數(shù),然后用 PyTuple_GetItem() 循環(huán)讀取每個參數(shù)值,最后根據(jù)情況轉換參數(shù)值。

請參考下面的代碼

/*
此 python 擴展示例代碼,計算整數(shù)數(shù)組和,如下:
    from liyi import psum
    psum(1, 2)
    psum(10, 20, 30)
    try:
        psum('a', 1)
    except TypeError:
        pass


## 編譯命令(以 linux 為例)
cc -g -Wall `python3.6-config --cflags` -o demo demo.c  `python3.6-config --ldflags`


## 參考
https://docs.python.org/3/c-api/index.html
 */
#include <Python.h>


// 計算整數(shù)數(shù)組和
static PyObject* psum(PyObject *self, PyObject *args)
{
    int sum = 0;
    for (int i=0; i<PyTuple_Size(args); i++) {
        PyObject *item = PyTuple_GetItem(args, i);
        // 數(shù)組元素必須是整型
        if (!PyLong_Check(item)) {
            char message[128];
            snprintf(message, sizeof(message), "%d-th item must be long", i);
            PyErr_SetString(PyExc_TypeError, message);
            return NULL;
        }
        sum += PyLong_AsLong(item);
    }
    return PyLong_FromLong(sum);
}

static PyMethodDef Methods[] = {
    {"psum", psum, METH_VARARGS, "Return sum of integer array"},
    {NULL, NULL, 0, NULL}
};

static PyModuleDef Module = {
    PyModuleDef_HEAD_INIT,
    "liyi", NULL, -1, Methods,
    NULL, NULL, NULL, NULL
};

static PyObject* PyInit(void)
{
    return PyModule_Create(&Module);
}

int main(int argc, char *argv[])
{
    PyImport_AppendInittab("liyi", &PyInit);

    Py_Initialize();
    PyRun_SimpleString(
        "from liyi import psum\n"
        "for numbers in [(1,2), (10,20,30)]:\n"
        "    print('%s = %d' % ('+'.join(map(str, numbers)), psum(*numbers)))\n"
        "try:\n"
        "    psum('a', 1)\n"
        "except TypeError:\n"
        "    import traceback; traceback.print_exc()\n"
    );
    if (Py_FinalizeEx() < 0) {
        exit(1);
    }
    return 0;
}
過客 回答

iCarousel切換的慢是不是速度問題, 而是和在一定時間內(nèi)滾動的Offset有關.
每一個item切換的Offset是通過時間計算的, 然后iCarousel再調用[self scrollByOffset:[self minScrollDistanceFromOffset:_scrollOffset toOffset:offset] duration:duration];滾動視圖.

  • iCarousel源碼
NSTimeInterval time = MIN(1.0, (currentTime - _startTime) / _scrollDuration);
delta = [self easeInOut:time];
_scrollOffset = _startOffset + (_endOffset - _startOffset) * delta;
[self didScroll];

需要改變的是scrollOffset, scrollOffset和時間, 也就是time計算出delta = [self easeInOut:time];, 所有我建了一個分類, 其中重寫了easeInOut方法, 從而調整scrollOffset

#import <iCarousel/iCarousel.h>

@interface iCarousel (speed)

/** 滾動速度 */
@property (nonatomic, assign) CGFloat speed;

@end
#import "iCarousel+speed.h"
#import <objc/runtime.h>

@implementation iCarousel (speed)

static NSString * const iCarousel_speed = @"iCarousel_speed";

- (CGFloat)easeInOut:(CGFloat)time
{
        return self.speed;
//    return 0.32;
//    return (time < 0.5)? 0.5 * pow(time * 2.0, 3.0): 0.5 * pow(time * 2.0 - 2.0, 3.0) + 1.0;
}

- (void)setSpeed:(CGFloat)speed
{
    objc_setAssociatedObject(self, &iCarousel_speed, @(speed), OBJC_ASSOCIATION_RETAIN);
    
}

- (CGFloat)speed
{
    return [objc_getAssociatedObject(self, &iCarousel_speed) doubleValue];
}

@end

speed越小速度越快, 設置_icarouselView.speed = 0.32;


自測: 滾動時略有卡頓, 還不夠完美, 但是滾動速度上確實提高了不少.

故林 回答

以下方案:

  1. tcp server/ws server提供一個http接口。

    比如我nodejs寫的websocket服務器,php要發(fā)消息怎么辦,PHP不能直接連接,那只能nodejs給個接口,php去請求了。
  2. 基于消息隊列

    tcp server/ws server連接到一個消息隊列作為消費者,php端將要發(fā)生的消息寫入消息隊列
玄鳥 回答

很多web應用都提供了從其他的服務器上獲取數(shù)據(jù)的功能。使用用戶指定的URL,web應用可以獲取圖片,下載文件,讀取文件內(nèi)容等。這個功能如果被惡意使用,可以利用存在缺陷的web應用作為代理攻擊遠程和本地的服務器。這種形式的攻擊稱為服務端請求偽造攻擊(Server-side Request Forgery)。

例如使服務器獲取本地任意文件

file:///C:/Windows/win.ini
file:///etc/passwd

例如

AdobeSSRF

SSRF 可用于實現(xiàn)任意文件下載,但其可以用于更高級別的攻擊,通過判斷本地已經(jīng)安裝的服務,從而實現(xiàn)針對特定服務的漏洞利用,甚至獲得完整控制權。

參考