求一个数的二进制位中有几个1
int count_bit_one(int n)
{
int count = 0;
while(n)
{
n = n & (n-1);
count++;
}
return count;
}
乘法口诀中的小细节
%3d是C语言中格式化输出字符,代表的意思是指的输出3个字符长度的整数。可以在“%”和字母之间插进数字表示最大场宽。例如:%3d表示输出3位整型数,不够3位右对齐
结构体
结构体是一些值的集合,这些值称为成员变量,结构体的每个成员可以是不同类型的变量。
结构体的声明
struct 结构体关键字
代码表示:
struct stu//结构体类型
{
char name[20];
short age;
char tele[12];
char sex[5];
}; s1, s2, s3;//结构体变量(全局)
int main()
{
struct stu s;//(局部变量)
return 0;
}
结构体声明第二种形式
typedef struct stu//typedef重新给stu起名
{
char name[20];
short age;
char tele[12];
char sex[5];
}st;//取名为st
结构体成员访问
1、通过点操作符(.)访问的
例:stu.name
2、通过指针传参
stu* ps ps->name
小便签
1、栈区的默认使用
先使用高地址的空间,再使用低地址处的空间
2、数组随着下标的增长,地址是由低到高变化
const int*p = &num
const放在指针变量的*左边时修饰的是*p,也就是说:不能通过改变*p(num)的值,const放在指针变量的*右边时,修饰的是指针变量p本身,p不能被改变。