数据结构
kalp_yp
这个作者很懒,什么都没留下…
展开
-
有符号和无符号自动类型转换的区别
首先说明一下什么是自动类型转换: 在计算机上进行运算时,内存上的数据一旦被储存在寄存器中(通常为int的大小),小于int的字节数的数据将被扩 展成int的字节数长度。该部分既是称为「自动类型转换」的C语言规格。有符号si8_t c;c = 0xff;id(c == 0xff){ //假}在进行[c == 0xff]比较时,左边的c 8字节整数因发生了自动类型转换,转换位Int型。带符号的整数转换位更大字节长度的类型时,符号位不变,对符号位进行扩展,...原创 2021-04-27 15:20:43 · 496 阅读 · 0 评论 -
C语言类型转换
1.强制类型转换A类型转换为B类型。1.当B类型长度大于A类型,能存放下A类型,结果不变2.当B类型长度小于A类型,不能存放下A类型,则对A类型的值进行截断,截断高位或者低位字节与操作系统的大小端有关,并不是所有强制类型转换都能成功。2.隐式类型转换为编译器主动进行的类型转换从低类型到高类型的隐式类型转换是安全的;而从高类型到低类型的转换是不安全的,会产生截断,从而产生不正确的结果。有以下四种情况:1、算术运算中,由低类型转换为高类型2、赋值表达式中,赋值运算符“=”右边的变量转换原创 2021-04-27 10:40:25 · 234 阅读 · 0 评论 -
NULL和void*
void *指针1.无类型指针,指向一块实际存放数据的地址,但该地址存放的数据的类型不确定。可以指向任意类型的指针。如动态内存分配void * memset ( void * buffer, int c, size_t num );void * memcpy(void *dest, const void *src, size_t len);2.void类型指针指向的数据类型时不确定的,只是单纯的操作此内存块,并不关注该片内存是什么类型,所以在进行内存分配后,需要强制类型转换,在进行数..原创 2021-02-16 14:03:29 · 349 阅读 · 0 评论 -
变量命名规范
一、驼峰命名法使用大小写字母混合命名变量和函数。如:mciSendString();第一个字母小写,每个单词的首字母大写。二、匈牙利命名法在windows下开发常用。常用命名规则为:变量名 =变量类型(前缀) +英文单词意思。前缀首字母小写,英文单词意思首字母大写。前缀 类型a 数组 (Array)b 布尔值 (Boolean)by 字节 (Byte)c...原创 2020-05-21 13:05:42 · 6232 阅读 · 0 评论 -
strlen和sizeof有什么区别
1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strlen是函数。 3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。sizeof还可以用函数做参数,比如: short f();printf("%d\转载 2016-05-04 12:06:44 · 291 阅读 · 0 评论 -
"<<"运算符的重载
"<<"重载原创 2017-05-12 16:51:10 · 812 阅读 · 1 评论 -
C++ STL中的map和vector
STL转载 2017-08-10 23:27:03 · 4086 阅读 · 0 评论 -
C++ operator 重载操作符
operator是c++中的重载操作符,可对操作符进行重载,将operator=作为一个整体进行运算。运算的数据类型是用户自定义的数据类型class。声明一个重载运算符运算符重载实现为类成员函数class person{private: int age;public: person(int a){ this->age = a; } ...转载 2018-08-29 20:51:17 · 489 阅读 · 0 评论