c语言知识2

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、指针

对于计算机来说,他的所有数据都必须放在内存中,不同类型的它所占用的字节不同例如,int占用4个字节。我们为了正确的访问这些数据,我们给每个字节进行编号,我们将这个编号称为指针。最小的存储地址为0x0000 0000,最大的地址为0xFFFF FFFF。

#include<stdio.h>
int main()
{
  int a=10;
  &a;//取a变量的地址;
  printf("1==>0X%08X\n",&a);
}

在32位系统中,指针占四个字节,在64位的环境中是8个字节。
小端存放:低字节存放在低地址,高字节存放在高地址;大端存放则相反。

#include<stdio.h>
int main()
{
    int *p;//对指针的声明
    int a=100;
    p=&a;
    *p=100;//获取指针指向的数据,是一种间接操作
    return 0;
}

二、结构体

:在C语言中,结构体是一种数据类型:例如

struct Student
{
  char s_id[10];
  char s_name[10];
  char s_sex[5];
  int   age;
};
int main()
{
	int a;
	struct Student s1 ={"","",""};//声明结构体变量
   	printf("%s\n",s1.s_id);
	return 0}

二、typedef

typedef这个关键字是将变量名转化为类型名,例如

typedef struct student
{

}s,*stu;//其中student是结构体的名称,s是变量类型,*stu是指针类型

三、static和extern,const

static:修饰局部变量,语法层面:函数被调用时,静态变量只被初始化一次。被存在数据区(可见性只能在本文件可见)

#include<stdio.h>
int main()
{
   static int a=0;//静态局部变量
   return 0}

extern:告诉编译器,这个变量在这个工程的其他文件有这个;在链接的时候定位(外部关键字)

const :定义常变量的关键字,可读不可写,const可以和int互换位置,必须进行初始化,赋予初值。例如

int const  a=10;

四,函数

函数:系统预定义(库函数);用户自己定义的(函数 返回类型+函数名+形参列表+函数体,无论花括号里有没有东西,都是函数的定义,没有花括号就是函数的声明),每个形参前面都要有类型,不等于局部变量的定义,定义函数名的时候要见名知意

五,空语句

语句可以为空,例如
int main()
{
	for (; ;);
	{
		printf("sahidhi");
	}
}

空语句带来的问题:它会破坏if,while,for语句,导致语句提前结束,
if会导致不论条件符合与否嘛,都执行下一个语句;
while:会导致无限循环,会执行一次例如

int main()
{
	int i = 0;
	while (--i > 0);
	{
		printf("0");
	}
	return 0;
}

五,bool

在.c文件中需要引用头文件<stdbool.h>,空字符,0,空指针都是假,其余的都为真,运用逻辑表达式,运算结果都是bool值。例如:与运算(&&);或运算(||);非运算(!);
他们的优先级为:赋值运算符(=)<&&和||<关系运算符<算术运算符<非(!).

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值