start_routine 參數(shù)的原型是
void *(*start_routine) (void *)
不是
void (start_routine)(void)
或
void (start_routine)(void*)
請參照文檔 http://man7.org/linux/man-pag...
默認情況下,gcc 要開啟 -Wreturn-type 才會警告 “在非 void 返回值函數(shù)中沒有 return 語句”,
一般建議打開 -Wall 選項,可將所有警告當成編譯錯誤,如
gcc -Wall a.c
若使用 g++ 編譯,則不必顯式指定 -Wreturn-type,因它規(guī)定要寫 return(對非 void 返回值)。
vs 的調(diào)試器里應該也會 條件斷點 這種東西,作用是某個條件成立時(比如,循環(huán)變量 i == 100)停止運行。
在這里打一個條件斷點后,再運行程序
放到全局 <style>...</style> 里先看看
public class Solution {
/**
* @param n an integer
* @return a list of Map.Entry<sum, probability>
*/
public List<Map.Entry<Integer, Double>> dicesSum(int n) {
// Write your code here
// Ps. new AbstractMap.SimpleEntry<Integer, Double>(sum, pro)
// to create the pair
List<Map.Entry<Integer, Double>> results =
new ArrayList<Map.Entry<Integer, Double>>();
double[][] f = new double[n + 1][6 * n + 1];
for (int i = 1; i <= 6; ++i)
f[1][i] = 1.0 / 6;
for (int i = 2; i <= n; ++i)
for (int j = i; j <= 6 * n; ++j) {
for (int k = 1; k <= 6; ++k)
if (j > k)
f[i][j] += f[i - 1][j - k];
f[i][j] /= 6.0;
}
for (int i = n; i <= 6 * n; ++i)
results.add(new AbstractMap.SimpleEntry<Integer, Double>(i, f[n][i]));
return results;
}
}沒人回答那我自己來吧
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
typedef unsigned char byte;
bool removeBytes(FILE *stream, int length) {
if (length <= 0)
return true;
long pos1, pos2, oldLength, newLength, off;
pos1 = pos2 = ftell(stream);
fseek(stream, 0, 2);
oldLength = ftell(stream);
fseek(stream, pos1, 0);
newLength = oldLength - length;
off = newLength - pos1;
while (off > 0) {
int cSize = off>0x1000?0x1000:off;
char *cache = new char[cSize];
off -= cSize;
if (fseek(stream, pos2 + length, 0)||
fread(cache, 1, cSize, stream) != cSize||
fseek(stream, pos2, 0)||
fwrite(cache, 1, cSize, stream) != cSize)
return false;
pos2 += cSize;
free(cache);
}
return !ftruncate(fileno(stream), newLength<pos1?pos1:newLength);
}
bool insertBytes(FILE *stream, byte *bytes, long length = 4) {
if (length < 0)
return true;
long pos, oldLength, newLength, off;
pos = ftell(stream);
fseek(stream, 0, 2);
oldLength = ftell(stream);
fseek(stream, pos, 0);
newLength = oldLength + length;
off = oldLength - pos;
if (ftruncate(fileno(stream), newLength))
return false;
while (off > 0) {
int cSize = off>0x1000?0x1000:off;
char *cache = new char[cSize];
off -= cSize;
if (fseek(stream, pos + off, 0)||
fread(cache, 1, cSize, stream) != cSize||
fseek(stream, pos + length + off, 0)||
fwrite(cache, 1, cSize, stream) != cSize)
return false;
free(cache);
}
fseek(stream, pos, 0);
if (fwrite(bytes, 1, length, stream) == length)
return true;
return false;
}這個是語言設(shè)定的時候?qū)?shù)值類型定死的。
就像int是整型,double是雙精度一樣。
你只要記得它能存儲多少有效數(shù)據(jù)就可以了。
語法上兩回事,畢竟小括號與花括號不同。但是列表初始化有時候等價于直接初始化(非聚合類型),有時候等價于直接賦值成員(聚合類型)。
#include <iostream>
#include <string>
using namespace std;
int main() {
string s("some string");
if (s.begin() != s.end()) {
auto it = s.begin();
while (it != s.end()) {
*it = toupper(*it);
it++;
}
cout << s << endl;
}
return 0;
}
經(jīng)過評論區(qū)@zhenguoli 的提示改正了
hf-->hard float
沒上線,費點力氣還是能改的。
把項目工程的編碼、文件存儲的編碼、過濾器編碼全部修改一下吧,如果有jsp的話頁面中encoding的聲明也要改一下。
如果有判斷字段長度的地方,UTF8是按照三個字節(jié),GBK是2個字節(jié),也需要修改。
當然,最好的辦法是說服客戶,如果是空數(shù)據(jù)庫,客戶不想費事修改,給權(quán)限的話你自己動手來吧;但如果和其它數(shù)據(jù)庫放在一塊就不太可能修改了。
因為javascript是高級語言
高級語言的定義和gc無關(guān), c++也是高級語言
優(yōu)雅和細節(jié)關(guān)系大么, 雖然c++的確不優(yōu)雅, 畢竟有那么重的歷史包袱, 但是js可是公認的不優(yōu)雅啊, 雖然這并不影響js的流行.
允許處理細節(jié)也和優(yōu)雅無關(guān), 現(xiàn)代c++用好11開始的那些工具. 這只是允許處理罷了, 當然也可以選擇不處理, 比如各種smart pointer也可以寫的比較優(yōu)雅
源碼沒有問題,你只需要按照文檔操作便可編譯成功。
以 Ubuntu 16.04 LTS 為例,主要參考文檔(均來自項目源碼)如下
下面是一鍵安裝 btc-pool 腳本,主要參考上述文檔,已測
#!/bin/bash
# 一鍵安裝 btc-pool
#
# OS: Ubuntu 16.04 LTS
# @author 李毅
set -e
build_dir=/tmp
# 由 jarven 測試提供,https://segmentfault.com/q/1010000014060045?_ea=3538159
# 不需要兼容舊版 bitcoin,及不需要錢包功能的時候,可以使用系統(tǒng)默認的 libdb-dev
# 及 libdb++-dev 庫,請把下一行的 false 改成 true。
use_latest_libdb=false
cpus=`grep -Ee 'processor\s:' /proc/cpuinfo | wc -l`
# 禁止 root 用戶運行此腳本
#=========================
if [ "$UID" -eq 0 ] ; then
echo "禁止 root 用戶運行此腳本"
exit 1
fi
# 創(chuàng)建臨時目錄
#=============
[ -d $build_dir ] || mkdir -p $build_dir
# 安裝系統(tǒng)必要組件
#==================
# aptitude
if ! which aptitude >/dev/null 2>&1 ; then
sudo apt-get update
sudo apt-get install -y aptitude
fi
# 安裝 libboost-all-dev 需要人工干預
if ! aptitude show libboost-all-dev > /dev/null 2>&1 ; then
echo ""
echo "!!! 安裝 libboost-all-dev 需要人工干預,以降級某些依賴項的版本 !!!"
echo "<1> 第一次詢問時按下 'n' 鍵"
echo "<2> 第二次詢問時按下 'y' 鍵"
aptitude install libboost-all-dev
fi
#
sudo aptitude install -y \
build-essential autotools-dev libtool autoconf automake pkg-config cmake \
openssl libssl-dev libcurl4-openssl-dev libconfig++-dev \
libgmp-dev libmysqlclient-dev libzookeeper-mt-dev \
libzmq3-dev libgoogle-glog-dev libevent-dev
# 編譯安裝 librdkafka-v0.9.1
#===========================
if ! pkg-config --libs rdkafka ; then
sudo aptitude install -y zlib1g zlib1g-dev python
cd $build_dir
if [ ! -f librdkafka-0.9.1.tar.gz ]; then
wget -O librdkafka-0.9.1.tar.gz https://github.com/edenhill/librdkafka/archive/0.9.1.tar.gz
tar zxvf librdkafka-0.9.1.tar.gz
fi
cd librdkafka-0.9.1
make clean
./configure
make
sudo make install
fi
# 編譯 biticoin
#==============
sudo aptitude install -y \
build-essential libtool autotools-dev automake pkg-config libssl-dev \
libevent-dev bsdmainutils python3
if [ "$use_latest_libdb" = true ]; then
sudo aptitude install -y libdb-dev libdb++-dev
else if ! aptitude show libdb4.8++-dev >/dev/null 2>&1 ; then
# 安裝低版 libdb4.8
sudo apt-get install -y software-properties-common
sudo add-apt-repository -y ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install -y libdb4.8-dev libdb4.8++-dev
fi
cd $build_dir
if [ ! -f bitcoin-0.16.0rc1.tar.gz ]; then
wget -O bitcoin-0.16.0rc1.tar.gz https://github.com/bitcoin/bitcoin/archive/v0.16.0rc1.tar.gz
tar zxf bitcoin-0.16.0rc1.tar.gz
fi
cd $build_dir/bitcoin-0.16.0rc1
./autogen.sh
if [ "$use_latest_libdb" = true ]; then
./configure --with-incompatible-bdb --disable-wallet
else
./configure
fi
make -j $cpus
# 編譯 btcpool
#=============
cd $build_dir
if [ ! -d btcpool ]; then
git clone https://github.com/btccom/btcpool.git
fi
cd $build_dir/btcpool
[ ! -d build ] && mkdir build
cd build
# Release build
cmake -DCHAIN_TYPE=BTC -DCHAIN_SRC_ROOT=$build_dir/bitcoin-0.16.0rc1 ..
make -j $cpus
若有問題,請隨時留言。
當然可能!你試試用文本編輯器打開一個MP4視頻文件,看看開頭5-12字節(jié)是不是ftypmp42? 再比如任意一個zip壓縮包,你打開前兩個字節(jié)看看,是不是PK?(這是為了紀念它的發(fā)明人Philip Katz,使得無損壓縮領(lǐng)域絕無可能被壟斷)
對于任意一種二進制格式(除文本文件外的),基本都會按照以下套路存儲文件:
Header + Data
Header部分基本都存在于文件開頭部分若干的固定長度的字節(jié),里面大部分內(nèi)容都是純文本內(nèi)容,因此可以用文本編輯器直接看到這些內(nèi)容,一般都是文件長度啊,作者信息啊,一些編碼數(shù)據(jù)啊等等元數(shù)據(jù)信息。之后才是Data部分。
一些文件甚至還會包含Tail部分,表示文件已經(jīng)結(jié)束了。比如jpeg就屬于這一種。這也是早年流行一時的將壓縮包隱藏到圖片文件中的黑科技的原理。因為有Tail部分,所以圖片瀏覽器就認為文件已經(jīng)結(jié)束了,后面的部分不再視為圖片,于是乎將壓縮包追加到后面的文件內(nèi)容中,可以被壓縮工具識別到。
所以理論上,你完全可以將這些文件的頭部存成一張大表,根據(jù)文件頭的特征確定是什么文件。但目前你沒必要自己這么做了,因為有人已經(jīng)幫你整理好了,MIME了解一下?
<?php
public function b($arr = array()) {
if (!empty($arr)) {
return "";
} else {
foreach ($arr as &$v) {
if (is_array($v)) {
$v = $this->b($v);
} else {
$v = $v + 1;
}
}
return $arr;
}
}
?>
請求頭中的content-Type字段內(nèi)容沒有在Access-Control-Allow-Headers中被設(shè)置為允許。服務端配置下Access-Control-Allow-Headers。
1.左邊菜單position設(shè)置為absolute,height:100%,這樣試試。
2.flex布局。
把重復的代碼提取出來,類似于這樣:
const props = {
hidden: fieldObj.hidden===true?'hidden':undefined,
disabled: fieldObj.disabled===true,
key: fieldObj.id,
value: !fieldObj.value||typeof fieldObj.value=="string"?fieldObj.value:fieldObj.value[this.props.index],
onChange: (e)=>this.props.changeValue(e,fieldObj),
style: style,
placeholder: fieldObj.placeholder,
}
再傳到組件中
<component ...{props}/>北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學校辦產(chǎn)業(yè)為響應國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復興的升級產(chǎn)業(yè)鏈。利用北京大學優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓領(lǐng)域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務負責iOS教學及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。