C and C++ code

##%zu for sizeof

##return/exit

在main函数中调用exit和return结果是一样的,但在子函数中调用return只是代表子函数终止了,在子函数中调用exit,那么程序终止。

##NULL
#define NULL ((void *)0)

const&pointer

c 复制代码
	int a = 1;
	int b = 2;

//指向常量的指针
	//修饰*,指针指向内存区域不能修改,指针指向可以变
	const int * p1 = &a; //等价于int const *p1 = &a;
	//*p1 = 111; //err
	p1 = &b; //ok

//指针常量
	//修饰p1,指针指向不能变,指针指向的内存可以修改
	int * const p2 = &a;
	//p2 = &b; //err
	*p2 = 222; //ok

read from right to left:
const int * p: a pointer p point to const int
p-->a pointer p
*-->point to

int * const p: a const pointer p point to int

pointer - pointer

c 复制代码
#include <stdio.h>

int main()
{

    int a[] = {0,1,2,3,4};
    int * p2 = &a[2];
    int * p4 = &a[4];

    int n = p4 - p2;//2
  
    int m = (int)p4 - (int)p2;//8

    
    return 0;
}
相关推荐
何以解忧,唯有..15 分钟前
Python 线程编程:从入门到实战
开发语言·python
_wxd66629 分钟前
STL-stack与queue与priority_queue(容器适配器)
c++
zh路西法1 小时前
【玩转VLA具身智能机械臂】(二):MoveIt2 运动规划——架构、配置与 C++ 上手
c++·机械臂·路径规划·vla·planner·moveit2
SomeB1oody1 小时前
【RustyML入门】7.2. 深入模型持久化
开发语言·后端·机器学习·rust·教程
yaoxin5211231 小时前
502. Java 反射 - 编写 MessageInterceptor 类
java·开发语言
wuyk5551 小时前
Python零基础入门第五章:元组Tuple(不可变容器详解、列表与元组区别)
开发语言·python
三8441 小时前
PHP 污点分析绕过实战:CURL、get_meta_tags 与 fpm_get_status 引入非预定义污点源
开发语言·php
2601_965798471 小时前
Build a Fast, High-Ranking Restaurant Website with Rolanda Theme
开发语言·ios·swift
caimouse2 小时前
ReactOS 窗口系统分析(25):标题栏显示与系统按钮 — nonclient.c 标题栏专题
c语言·开发语言