
C/C++
ginwafts
这个作者很懒,什么都没留下…
展开
-
浮点数范围是怎么算出来的
转载自http://blog.youkuaiyun.com/krocwang/article/details/4444491最近一段时间看到版上关于C++里浮点变量精度的讨论比较多,那么我就给对这个问题有疑惑的人详细的讲解一下intel的处理器上是如何处理浮点数的。为了能更方便的讲解,我在这里只以float型为例,从存储结构和算法上来讲,double和float是一样的,不...原创 2016-08-02 13:55:49 · 10243 阅读 · 2 评论 -
编译错误:variable-sized object may not be initialized
原因,定义数组的时候使用变量来定义数组长度。如下代码:int a = 10;char b[a];//编译不报错//char b[a] = "jfkd";//报错,使用变量定义长度时,不可在定义时同时进行初始化赋值,需要在之后进行赋值printf("b = %s, len = %d:%d\n", b, strlen(b), size...转载 2020-02-22 21:27:58 · 1721 阅读 · 0 评论 -
printf右对齐补零
Turbo C2.0 标准库提供了两个控制台格式化输入、 输出函数printf( ) 和scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入设备(键盘)上读数据。下面详细介绍这两个函数的用法。一、printf()函数printf()函数是格式化输出函数,...转载 2020-01-19 16:19:51 · 736 阅读 · 0 评论 -
算法笔记11.7.2 关于01背包的滚动数组
前提摘要见上一篇01背包问题时间和空间复杂度都是O(nV),空间复杂度可以继续优化为O(V) 算法笔记P444滚动数组代码1 dp[N];//这里只用一维的2 for(int i=1; i<=n; i++)//对每个数判断,可反3 {4 for(int j=m; j>=weight[i]; j--)/5 dp[j]=m...原创 2020-03-25 19:37:28 · 217 阅读 · 0 评论 -
算法笔记11.7.2 01背包问题
https://www.cnblogs.com/DJC-BLOG/p/9416799.html算法解释起来太抽象了。也不是很好理解,最好的办法就是一步步写出来。背包问题的核心在于m[i][j]=max(m[i-1][j],m[i-1][j-w[i]]+v[i])这个公式理解起来还是有点麻烦的特别我这种脑子笨的人。所以我先上段代码,然后那数据一步步分析就行了。先上代码:代码稍微看看...转载 2020-03-25 19:36:44 · 230 阅读 · 0 评论 -
C语言变量初始化是必须的吗?不初始化会怎样?
这个问题很重要!实际上前面讲那么多,其中有一个很重要的目的就是为了讲这个知识点。所谓初始化就是“第一次赋值”的意思。我们先来看一个程序:#include <stdio.h> int main(void) { int i; printf("i = %d\n", i); return 0; }这里i没有被赋值,只是定义了一个存储空间。这时输出这个空间的内容,你觉...转载 2020-03-10 22:56:03 · 7983 阅读 · 2 评论 -
为什么把double换成int输出值就为0.00了呢?
https://www.imooc.com/qadetail/168807 //我觉得原本是double类型的cost精度那么高,非要转化为int型数据输出的时候肯定有问题,转换为二进制后cos//t这个内存数据可以很明显看出低32位全是0,而%d则只能截取到低32位,所以输出为0,然后在main函数中你再///以%lf输出,结果就会自动加上0.00了 #include<...转载 2018-08-10 00:06:42 · 3868 阅读 · 0 评论 -
结构体数组赋值的问题
C语言只有在定义字符数组的时候才能用“=”来初始化变量,其它情况下是不能直接用“=”来为字符数组赋值的,要为字符数组赋值可以用string.h头文件中的strcpy函数来完成。例如:char a[10] = "123"; /*正确,在定义的时候初始化*/char a[10];a = "123"; /*错误,不能用“=”直接为字符数组赋值*/strcpy(a, "123"); /*正确,...原创 2018-06-29 16:03:34 · 37917 阅读 · 3 评论 -
C语言字符指针赋值的问题
#include <stdio.h>void Initialize (char * a, char * b) { a[0] = 'T'; a[1] = 'h'; a[2] = 'i'; a[3] = 's'; a[4] = ' '; a[5] = 'i'; a[6] = 's'; a[7] = ' '; a[8] = 'A'; a[9] = '\0'...原创 2017-12-24 20:58:17 · 2744 阅读 · 0 评论 -
extern与static用法
在讨论全局变量之前我们先要明白几个基本的概念:1. 编译单元(模块): 在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR), 因为它不像编译错误那样可以给出你程序错误的具体位置,你常常对这种错误感到懊恼,但是如果你经常使用gcc,makefile等工具在linux或者嵌 入式下做开发工作的话,那么你可能非常转载 2017-12-24 12:42:46 · 348 阅读 · 0 评论 -
c语言printf()输出格式大全
1.转换说明符 %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整数 %f 浮点数(包括float和doulbe) %e(%E) 浮点数指数输出[e-(E-)记数法] %g(%G) ...原创 2017-11-09 20:19:13 · 645 阅读 · 0 评论 -
32位 64位操作系统下基本数据类型字节大小
c语言中基本数据类型的长度:32位下:char :1个字节(不变)*(指针变量): 4个字节(32位机的寻址空间是4个字节。同理64位编译器)(变化)short int : 2个字节(不变)int: 4个字节(不变)unsigned int : 4个字节(不变 ...c语言中基本数据类型的长度:32位下:char :1个字节(不变)*(指针变量): 4个转载 2016-07-28 16:53:12 · 739 阅读 · 0 评论 -
C++中的rand()、srand()
如何产生真正的随机数 1.用rand()可产生0~32767范围内的随机整数 2.如果不设置随机数种子,每次产生的随机数序列都是一样的; 3.用srand(种子)可以设置随机数序列,同一个种子产生的序列相同; 4.为了让种子不同,一般用time(NULL)函数来得到一个种子数; 5. time(NULL)用于得到某个时该距离当前时刻的秒数 6.rand()、srand()函数头文件为s转载 2016-07-03 23:55:15 · 293 阅读 · 0 评论 -
单精度float 和双精度double
单精度实数在内存中占32bit 有效数字为6~7位双精度实数占内存单元为64bit 有效数字为15~16位没有说明时,实型常量是作为双精度处理的,若要使用单精度需在后面加上字母f或F,如123.45f原创 2016-08-12 15:56:37 · 1799 阅读 · 0 评论 -
C++多个else的配对问题
可能发生的一个小错误int main(){ float a,b,c,disc,x1,x2,p,q,i; scanf("%f%f%f",&a,&b,&c); disc=b*b-4*a*c; if(disc<0) p=-b/(2*a); q=(sqrt(disc))/(2*a); x1=p+q*i; x原创 2017-07-26 22:03:25 · 1019 阅读 · 0 评论 -
指针右左法则----复杂指针解析
原文:http://www.cppblog.com/luliang/archive/2008/09/15/61863.html?opt=admin右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标准里面的内容,它是从C标准的声明规定中归纳出来的方法。C标准的声明规则,是用来解决如何创建声明的,而右左法则是用来解决如何辩识一个声明的,两者可以说是相反的。右左法则的英文转载 2017-09-25 19:40:59 · 443 阅读 · 0 评论 -
逗号运算符花絮
interesting原创 2017-07-29 12:30:27 · 264 阅读 · 0 评论 -
C++:wchar_t 和C++新增类型:char16_t char32_t
转载自 http://blog.youkuaiyun.com/lishuzhai/article/details/50595498wchar_t:wchar_t是初学C/C++的筒子们不经常用到的类型。首先说一下什么是wcha_t:wchar_t是C/C++的字符类型,是一种扩展的存储方式,主要用在国际化程序的实现中。wchar_t 存在的原因:转载 2016-08-01 15:25:27 · 911 阅读 · 0 评论