memset赋值赋的是ASSCII码转为二进制赋值
比如 memset(,0xff,sizeof()),0xff转为二进制11111111,int为4字节所以最后为11111111111111111111111111111111为-1。(化为二进制补位,然后再赋值)。
而OIER通常都希望能够通过memset赋给数组一个最大值
## 如何定义这个无穷大
这个主要还是看数据范围。
如果直接用int最大值或者和最大值同位数的值作为无穷大的话
比如 2147483647 + 999
爆了int , 它就会从我们定义的无穷大变成负无穷大,这不满足我们的期望。
所以到底该用什么来当这个 —— 无穷大
经常会看到大佬啊神犇啊会用:
memset( , 0x3f , sizeof );
特意去试了下,发现 0x3f3f3f3f 真的是个非常精巧的常量
他的十进制是 1061109567也就是10^9级别的(和0x7fffffff一个数量级),作为一个oier, 一般场合下的题目数据都是小于10^9的,所以它可以作为无穷大使用而不致出现数据大于无穷大的情形
因为0x3f3f3f3f的每个字节都是0x3f!所以要把一段内存全部置为无穷大,我们只需要memset(a,0x3f,sizeof(a))(memset按字节赋值)。

所以在通常的场合下,0x3f3f3f3f真的是一个非常棒的选择。

其他常用赋值:

memset(arr,0x7F,sizeof(arr)); //它将arr中的值全部赋为2139062143,这是用memset对int赋值所能达到的最大值

memset(arr,0x80,sizeof(arr)); //set int to -2139062144 //赋负值

给double赋值:
memset(arr,0x7F,sizeof(arr)); //set double to 1.38242e+306
memset(arr,0xFE,sizeof(arr)); //set double to -5.31401e+303

关于memset的赋值(最大值最小值的选择)的更多相关文章

  1. C# 求链表 list 中 属性的 最大值 最小值

    获取链表List中对象属性最大值最小值(Max,Min)的方法: 1.创建一个类,类中有一个属性A /// <summary> /// 用于测试属性的类 /// </summary& ...

  2. js求最大值最小值

    比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用自带的sort()函数,代码如下: <html> <head> <meta charset=&qu ...

  3. Tunnel Warfare (区间合并|最大值最小值巧妙方法)

    Tunnel Warfare http://acm.hdu.edu.cn/showproblem.php?pid=1540 Time Limit: 4000/2000 MS (Java/Others) ...

  4. java8 stream取出 最大值/最小值

    注:转载请注明出处!!! 这里直接用取出多个对象中某个值 最大/最小 来进行举例 直接看代码 /** * 时间测试类 */ class TimeTest { private Date time; pu ...

  5. html标签内部简单加js 一维数组求最大值 最小值两个值位置和数字金字塔图形

     html标签内部,简单加js <a href=""></a><!DOCTYPE html PUBLIC "-//W3C//DTD XHTM ...

  6. C++数组或vector求最大值最小值

    可以用max_element()及min_element()函数,二者返回的都是迭代器或指针. 头文件:#include<algorithm> 1.求数组的最大值或最小值 1)vector ...

  7. php三目运算计算三个数最大值最小值

    文章地址:https://www.cnblogs.com/sandraryan/ $x = 10; $y = 45; $z = 3; //求出三个数字中最大值最小值 //先比较x y,如果x> ...

  8. 使用Java Stream,提取集合中的某一列/按条件过滤集合/求和/最大值/最小值/平均值

    不得不说,使用Java Stream操作集合实在是太好用了,不过最近在观察生产环境错误日志时,发现偶尔会出现以下2个异常: java.lang.NullPointerException java.ut ...

  9. 【memset】关于memset的初始最大最小值

    声明:也是摘自网上各路大神的. memset的正规用法是只能用来初始化char类型的数组的,也就是说,它只接受0x00-0xFF的赋值. 因为char是1字节,memset是按照字节赋值的,相当于把每 ...

随机推荐

  1. https://blog.csdn.net/qq_35636311/article/details/78255568 cPython 扩展

    https://blog.csdn.net/qq_35636311/article/details/78255568 http://book.pythontips.com/en/latest/pyth ...

  2. Java字节码增强探秘

    Java字节码增强探秘 https://mp.weixin.qq.com/s/CH9D-E7fxuu462Q2S3t0AA

  3. fingerprint for the ECDSA key

    验证  fingerprint for the ECDSA key ssh-keygen -t  ecdsa  -f ssh_host_ecdsa_key 在B上ssh A ,得到A的fingerpr ...

  4. MXNet/Gluon 中网络和参数的存取方式

    https://blog.csdn.net/caroline_wendy/article/details/80494120 Gluon是MXNet的高层封装,网络设计简单易用,与Keras类似.随着深 ...

  5. 006 认识BeanNameAware

    在看Spring的生命周期,就要注意到Spring Aware,Aware是什么,在这篇文章中,主要是说明三个部分,Spring的生命周期[这个在后面会继续说明,这里这是一个大纲],然后说明Sprin ...

  6. Python3基础 九九乘法表

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  7. Java中使用Socket连接判断Inputstream结束,java tcp socket服务端,python tcp socket客户端

    最近在试着用java写一个socket的服务器,用python写一个socket的客户端来完成二者之间的通信,但是发现存在一个问题,服务器方面就卡在读取inputsream的地方不动了,导致后面的代码 ...

  8. haproxy高可用、负载均衡集群

    HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.根据官方数据,其最高极限支持10G的并发.另外其支持从4层至7层的网络交换, ...

  9. python对 windows系统监控插件

    在python编程的windows系统监控中,需要监控监控硬件信息需要两个模块:WMI 和 pypiwin32 .

  10. 怎样制作像delphi一样的启动欢迎画面?

    //在工程里面写 Application.Initialize; Application.Title := '管理系统'; Application.ShowHint := True; //闪现窗体创建 ...