首页 > 其他分享 >跟着鹏哥学C—初识C语言3

跟着鹏哥学C—初识C语言3

时间:2023-03-05 17:08:08浏览次数:37  
标签:return CRT int 哥学 C语言 初识 操作符 printf include

1.单目运算符

逻辑反操作符

-

负值

+

正值

&

取地址

sizeof

操作数的类型长度(以字节为单位)

~

对一个数的二进制按位取反

--

前置、后置

++

前置、后置

*

间接访问操作符(解引用操作符)

(类型)

强制类型转换

1.1逻辑反操作符!

C语言中0为假,非0为真

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a= 0;
printf("a=%d",!a);//!把真变为假,假变真,输出结果为a=1
return 0;
}
1.2负值和正值

-操作符可以使负数变为正数,正数变为负数

+操作符不会改变数的符号,正数还是正数,负数还是负数

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 15;
int b = -a;
int c = +a;
printf("b=%d c=%d\n", b, c);//b=-15 c=15
a = -15;
b = -a;
c = +a;
printf("b=%d c=%d\n", b, c);//b=-15 c=15
return 0;
}
1.3取地址&
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 0;
int b = 0;
int sum ;
scanf("%d%d",&a,&b);//把输入的两个数存到a,b两个变量所在的地址中
sum = a + b;
printf("sum=%d\n", sum);
return 0;
}
1.4操作数的类型长度(以字节为单位)sizeof
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
int main()
{
int a = 10;
int arr[] = { 1,2,3,4,5,6 };
printf("%d\n",sizeof(a));//a是int类型,为4个字节
printf("%d\n",sizeof(int));//
printf("%d\n",sizeof(arr));//arr数组中有6个int类型的元素,为24个字节
printf("%d\n",sizeof(arr)/sizeof(arr[0]));//可以判断arr数组中的元素有6个
return 0;
}
1.5对一个数的二进制按位取反~
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 0;
int b = ~a;
//原码、反码、补码
//负数在内存中存储的时候,存储的是二进制的补码
printf("%d\n", b);
//打印的是这个数的原码,0的符号位是+,即00,按位取反得到11,即-1
return 0;
}
1.6前置、后置(-- 、++)
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 10;
int b = ++a;//前置++,先++,再使用
printf("a=%d b=%d\n", a, b);//a=11,b=11
return 0;
}
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 10;
int b = a++;//后置++,先使用,再++
printf("a=%d b=%d\n", a, b);//11 10
return 0;
}

--与++运算相同

1.7间接访问操作符(解引用操作符*)
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 10;
int* p = &a;//取地址
*p = 20;//把地址内面的内容赋值为20
printf("%p\n", &a);
printf("%p\n", p);
printf("%d\n", a);
return 0;
}
1.8强制类型转换

第5行代码,使a原本为double的类型,强行转变为int类型

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = (int)3.14;
printf("%d\n",a);//输出a=3
return 0;
}
2.关系操作符

>

大于

>=

大于等于

<

小于

<=

小于等于

!=

不等于

==

等于

3.逻辑操作符

&&

逻辑与

||

逻辑或

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
//0表示假,非0为真
int a = 3;
int b = 5;
int c = a && b;
printf("c=%d\n", c);//c=1
return 0;
}
4.条件操作符

exp1 ? exp2 : exp3

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 10;
int b = 20;
int max = 0;
max = (a > b ? a : b);
/*if (a > b)
max = a;
else
max = b;*/
printf("max=%d\n",max);
return 0;
}

5.逗号表达式

exp1,exp2,exp3,exp4

6.下标引用、函数调用和结构成员

[ ] 下标引用操作符

( ) 函数调用操作符

. ->



标签:return,CRT,int,哥学,C语言,初识,操作符,printf,include
From: https://blog.51cto.com/u_15990662/6101497

相关文章

  • 跟着鹏哥学C—初识C语言
    1.常见关键字auto  break  case  char  continue default  do  double  else  enum extern   float  for  goto  if  int ......
  • Map初识
    1.Map集合1.1Map集合概述和特点【理解】Map集合概述interfaceMap<K,V>K:键的类型;V:值的类型Map集合的特点双列集合,一个键对应一个值键不可以重复,值可以重复......
  • 初识Layering Sequence
    一、为什么需要LayeringSequence随着集成电路技术的发展,芯片的复杂度日益提升。对验证而言,为了更好地应对这种复杂性,一方面是提高各个级别的可移植性和复用性,另一方面是......
  • C语言-操作文件夹和文件
    文件夹——_mkdir()1#include<stdio.h>2#include<io.h>3#include<direct.h>45/**6*int_access(constchar*path,intmode);7*int_waccess(......
  • C语言学习笔记之 第六讲:头文件源文件以及include包含指令
    1、#include说明:#include后可以包含任意类型,不仅.h可以,也可以.c,也可以.cpp。也就是其他的代码文件可以利用#include直接调用。    #include内容不能重复包含,将会出现......
  • C语言学习笔记之 第四讲:C语言Windows命令行编程
    1、stdlib头文件即standardlibrary标准库头文件。stdlib头文件里包含了C、C++语言的最常用的​​系统函数​​该文件包含了C语言标准​​库函数​​的定义2、system()......
  • C语言学习笔记之 第一讲:C语言概述
    1、软件:一系列按照特定循序组织的计算机数据和指令的集合。2、软件分类:系统软件  应用软件3、人与计算机之间的交互方式:自然交互界面 声音、触摸屏控制  成就了......
  • C语言学习笔记之 第二讲:C语言环境简介
    1、C语言程序开发环境:MAC:      XcodeWindows:  VisualStudioLinux:      VI 、VIM  跨平台:   CodeBlocks、Eclipse、QT2、IDE:集成开发环境3......
  • C语言内存相关
    相关函数:memset和memcpy在头文件string.h(C语言)或cstring(C++)中参考资料https://www.geeksforgeeks.org/memset-in-cpp/https://www.geeksforgeeks.org/memcpy-in-cc......
  • 不同厂家的编译器 对C语言的理解不一样
    #注意是C语言代码,不是C++voidfunc(void){constintbuf_len=64;charbuffer[buf_len]={0};}$$cat-nfun.c1voidfunc(void)2{......