我在远程服务器上使用 gcov 标志编译了源文件。
CFLAGS += -fprofile-arcs -ftest-coverage -lgcov -coverage
Run Code Online (Sandbox Code Playgroud)
编译工作正常。使用gcc 4.7进行编译。生成的 .gcno 文件具有 407* 格式。所有功能都运行良好。我使用 gcov main.c 获取覆盖率报告
现在我正在尝试在我的本地系统中获取覆盖率数据,该系统的 gcc 版本为 4.1.2
我遇到分段错误。
错误:
main.gcno:version `407*', prefer 401p'
Segmentation fault (core dumped)
Run Code Online (Sandbox Code Playgroud)
gcc的版本是这个原因吗?为什么我会出现分段错误?新的gcc有哪些变化?可能的解决方案有哪些?(我无法更新gcc)
任何的意见都将会有帮助..
我正在尝试构建一个类似于 theano logic_sgd.py 实现中提供的 mnist.pkl.gz 的数据集。以下是我的代码片段。
import numpy as np
import csv
from PIL import Image
import gzip, cPickle
import theano
from theano import tensor as T
def load_dir_data(csv_file=""):
print(" reading: %s" %csv_file)
dataset=[]
labels=[]
cr=csv.reader(open(csv_file,"rb"))
for row in cr:
print row[0], row[1]
try:
image=Image.open(row[0]+'.jpg').convert('LA')
pixels=[f[0] for f in list(image.getdata())]
dataset.append(pixels)
labels.append(row[1])
del image
except:
print("image not found")
ret_val=np.array(dataset,dtype=theano.config.floatX)
return ret_val,np.array(labels).astype(float)
def generate_pkl_file(csv_file=""):
Data, y =load_dir_data(csv_file)
train_set_x = Data[:1500]
val_set_x = Data[1501:1750]
test_set_x = Data[1751:1900]
train_set_y = y[:1500]
val_set_y = …Run Code Online (Sandbox Code Playgroud) std::string src;
cout<<"maximum length of string : "<<src.max_size();
Run Code Online (Sandbox Code Playgroud)
我得到的输出是:
maximum length of string : 1073741820
Run Code Online (Sandbox Code Playgroud)
我需要创建一个大型字符串数组,如字符串输入[100000],但当我使用超过80,000的数组索引时,我得到运行时错误.我的字符串变量的长度较小,平均长度为15个字符.所以我需要限制字符串变量的长度.
以下是我的问题:
决定字符串数组的bigt索引的因素是什么?
如何减少字符串变量的max_size()?