头像-274437

9604a3b72d92b876

  • 17
  • 单片机、嵌入式
  • 通讯广播

个人成就

获得 287 次赞

帮助过444人

树莓派里面的c语言(gcc编译)得不出正确结果 树莓派Raspberry Pi

long n=100000000; double sum=0; for(long i = 0;i < n; i++) sum += (int)sqrt(n*(double)n-i*(double)i);printf("pi=%.12f\n"(4.0 * (double)sum)/n/n);上述代码,如果sum的类型是double,就没有问题,如果是int或long,就得不出正确结果,的确不明白为什么啊补充:看了几位回答,应该是我的问题不明确,在代码中的double sum=0;如果使用long sum或者int sum,就会得到不正确的结果(不是编译不通过)。但事实上,我的sum的确也只用的整形的加减(sqrt的结果强制转换),至于打印的时候,为了打印出小数位,把int和long转换成double,我认为也是没有问题的。大家怎么看?

windows下安装blis发现StringIO异常 其他应用

在windows下安装blis,我已经下载了blis-0.0.5.tar.gz包,但执行python setup.py build时发现StringIO异常,于是把import StringIO改成from io import StringIO,无报错,build文件夹和下面文件都生成了,但Compiling Blis (takes 60 to 120 seconds)error: [WinError 193] %1 不是有效的 Win32 应用程序。居然出现说不是Win32程序,不知道怎么回事。有谁可以帮忙一下吗?当然我用的是python3.7,比建议的3.5版本要高一点,但我认为这不是关键。如果回答说gz包不能用在windows下不妨自我检讨一下,安装包里面已经注明了:                'Development Status :: 4 - Beta'                'Environment :: Console'                'Intended Audience :: Developers'                'Intended Audience :: Science/Research'                'License :: OSI Approved :: MIT License'                'Operating System :: POSIX :: Linux'                'Operating System :: MacOS :: MacOS X'                'Operating System :: Microsoft :: Windows'                'Programming Language :: Cython'                'Programming Language :: Python :: 2.6'                'Programming Language :: Python :: 2.7'                'Programming Language :: Python :: 3.3'                'Programming Language :: Python :: 3.4'                'Programming Language :: Python :: 3.5'                'Topic :: Scientific/Engineering']

tilebox模块蓝牙数据怎么获取 树莓派Raspberry Pi

我有tilebox模块,希望用pybluez读取,但是discove_devices函数找不到对应的mac,不知还需要再做什么设置?

树莓派上的golang得不出正确结果 树莓派Raspberry Pi

我在windows下使用go语言,似乎没有注意赋值类型,例如计算pi:package mainimport "fmt"import "time"import "math"func main() { n :=100000000  sum := 0  start := time.Now().UnixNano()/1e6  for i := 0; i <= n; i++ {  sum += int(math.Sqrt(float64(n*n-i*i)))  }  end := time.Now().UnixNano()/1e6  fmt.Printf("%v"4*float64(sum)/float64(n)/float64(n))  fmt.Println()  fmt.Printf("Cost time:%vs"(float64(end-start)/1000))  fmt.Println()}完全没有问题,但同样代码,在Raspbian下,结果就乱七八糟了,甚至减少n到10000,也得不出正确结果,很明显,赋值的时候i:=0没能正确指明类型。估计是当做int8处理了。。。

go语言里面println和printf的区别 Linux 系统

我在go语言里面用fmt.println和fmt.printf,发现打印字符可能都差不多,但打印变量的时候,不仅仅是多个少个回车,似乎println有直接计算的功能,而printf多了格式化输出的功能,不知道还有没有其它区别?

windows下的shell不支持bc,其它好的方案吗? Linux 系统

我有段shell脚本,linux下已经调好了,但想要在windows 7下使用,使用git for windows,但发现不支持bc,不知道有其它好的方案吗?

go语言循环卡死 其他应用

使用go语言:    var i byte    go func() {        for i = 0; i <= 255; i++ {        }    }()​运行这段代码必然卡死,我认为和byte有关,不知道大家怎么看?

python中requests的错误 其他应用

为了在某个网站中搜索特定主题,我做了一个python的爬虫,使用的是requests。代码本身走读觉得没有问题,但运行以后得到一个错误:raise TooManyRedirects('Exceeded {} redirects.'.format(self.max_redirects) response=resp)requests.exceptions.TooManyRedirects: Exceeded 30 redirects.从描述上看,是超过30次重定向,我似乎想不通,网站居然会做出这种丧心病狂的举动(太浪费网页头了啊),为了防止爬虫,也不至于做出这种举动吧,那我们平时浏览怎么没问题呢?一般碰到这种情况,大家用什么办法解决呢?因为把网站贴出来,就不能发提问了,我只说是我们经常用到的某个电子论坛(非芯吧客)。附:用selenium就没有问题,但效率低太多。。。找到原因了,是防火墙上安全策略引入的,公司里面出口采用旁挂防火墙,实现对流量进行监控,当访问数据不合法(比如有敏感字或者外部调用),会直接定位到一个页面,但这个页面本身也有问题,继续重定位到这个页面,无限循环。。。没办法动网络结构,只好考虑改代码,通过参数allow_redirects=False关闭不合理的重定向,抛弃掉这个访问,获取的数据量虽然减小了,但起码不出错​