打卡第四天(指针变量)

电脑60s后关机,输入“我是猪”可取消关机。

#include <stdio.h>
#include <windows.h>
#include <string.h>
int main()
{
	system("shutdown -s -t 60");       //60秒后电脑关机
	char code[10] = { 0 };
	while (1)
	{
		printf("请输入\"我是猪\"否则在60秒后电脑关机\n");
		scanf_s("%s", code, 10);
		if (strcmp(code, "我是猪") == 0)
		{
			system("shutdown -a");      //取消关机
			break;
		}
	}
	return 0;
}

当定义一个指针变量 p 后:

p 表示指针变量本身,即它存储的内存地址。

*p 表示指针所指向的内存地址中的值。

int num = 10;
int *p = &num;  // p 存储了 num 的地址

在这个例子中,p 就是一个指针变量,它保存了变量 num 的地址。而 *p 则表示通过指针 p 访问到的实际值,也就是 10 。

#include <stdio.h>
int main ()
{

int arr[5] = { 1, 2, 3, 4, 5 };
int* p = arr;  // p 指向数组 arr 的首地址,数组(arr)就是地址。

printf("%d\n", *p);  // 输出 1,即数组的第一个元素
p++;  // 指针向后移动一个元素的位置
printf("%d\n", *p);  // 输出 2
printf("%p\n", p);   //输出地址

int a = 100;         //定义变量  
printf("%p\n", &a);  //输出的变量的地址("&"取地址操作符)

return 0;

这里,一开始 *p 是数组 arr 的第一个元素的值,当 p++ 后,*p 就变成了数组的第二个元素的值。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值