iOS 단계 학습 3일차 노트(연산자)
14924 단어 ios
1. 연산자
1. 산술 연산자
1) 표현식은 변수, 상수, 연산자로 구성되며 정해진 유형과 값이 있다
2) 산술 연산자에는 +(더하기), -(빼기), *(곱하기),/(나누기),%(강도) 등이 포함됩니다.
3) 산술 연산자 우선순위 괄호()>*,/,%>+, -
4)%는 잉여를 표시하고, a%b는 a를 b로 나누어 잉여를 표시한다.
5) 정수를 제외하고 두 개의 소수 처리 방법을 보류한다. 예를 들어 printf(%.2f,(float)14/9).
6) 자증자감 연산자:++; -
7)a++와++a의 차이:++a의 반환값은 a+1이고 b=++a는 a=a+1에 해당하며 b=a에 해당한다.a++ 반환값은 a, b=a++는 b=a에 해당하고 a=a+1은
2. 관계 연산자
1) 관계 연산자는 다음과 같습니다. >,>=,<,<=,==,!=
2) 관계 연산자 비교 결과 성립은 1(true)이고 성립되지 않은 결과는 0(false)
3. 논리 연산자
1) 논리 연산자는 다음과 같습니다.
& & (논리와/그리고 양자가 모두 성립되어야 진실이다).
||(논리 또는/또는 하나의 조건이 충족되면 진실이다).
!(논리적 비/아니다)!(진짜) = 가짜!(가짜) = 진짜 비 0 = 진짜 논리 연산자는 일반적으로if와 연용된다
연산자
1) 삼목 연산 구성 구조: (조건 표현식)?(문장1): (문장2)
예: c=a>b?a:b; a b 양자 중 최대 값을 c에 부여하는 것을 나타낸다
5. 대입 연산자
1) 대입 연산자는 다음과 같습니다. =, +=, -=, *=,/=,%=
2) += 전변수는 변수의 원래 값과 뒤에 있는 값을 나타낸다. 예를 들어 a+=b는 a=a+b를 나타낸다.
6. 쉼표 연산자
1) 쉼표 연산자 우선 순위가 가장 낮음(예: 표현식 1, 표현식 2,......, 표현식 n) = 표현식 n은 마지막 표현식을 가져옵니다.
7.비트(단bit) 조작 연산자
1) 위치와 &;비트별 또는 |;위치에 따라 거꾸로 하기~;변위 조작
2) 코드 인스턴스:
1 int a=0xff;
2 printf(“%d
”,a&0x0f)// :0x0f=15
3 /*
4 :
5 1111,1111
6 0000,1111
7 ——————————
8 0000,1111(0 1 & & = & = )
9 */
11 a = 0xf0;
12 printf("%d
",a|0x0f);// :0xff
13 /*
14 1111,0000
15 0000,1111
16 */
18 /* a bit 0, bit */
19 a = 0xcc;//0b11001100
20 a = a&0xf7;
21 /*
1100,1100
22 1111,0111 //0b1100,0100 0xc4=196
23 */
25 /*
26 a bit 1
27 */
28 a = 0;
29 a = a|0x8;
30 /*
31 0000,0000
32 0000,1000 =0x8;
33 */
34 printf("a=%d
",a);
36 a = 0b110;
37 printf("%d
",a<<2);// :0b1,1000=24
39 a = 0b0110;
40 /*
41 :
42 int=4 =32bit
43 a=0b0110=0b 0000,0000,0000,0000,0000,0000,0000,0110
44 :1111,1111,1111,1111,1111,1111,1111 ,1001
45 */
46 printf("~a=0x%x=%d
",~a,~a);// ,0xfffffff9=-7
8. 각종 연산자의 우선순위 비교
1、괄호(중첩 가능)>단목(++,--,!)>산술 > 관계 > 논리 > 할당
9. 데이터 유형 전환
1 int main()
2 {
5 int a = 0xfff1;
7 char c = a;//
9 printf("%d=0x%x
",c,c);// , 8bits
11 printf("%f
",(float)14/5);// ,14 float
13 /*
15 1、 long , long
17 2、float , double
19 3、char short , int
21 4、 ->
23 */
25 float f = 3.14;
27 printf("3.14+2000=%f
",f+2000);
29 char ch1 = -128;//0x80
31 int i = ch1;//char->int. : 1, 0
33 //0x80(char)-> 0xffff,ff80
35 printf("i=%d=0x%x
",i,i);
37 ch1 = 8;//0x8
39 i = ch1;//char->int. : 1, 0
41 printf("i=%d=0x%x
",i,i);
43 return 0;
45 }
10. 매크로 정의
1) 매크로 정의는 일반적으로 대문자 형식: #define 별명(대문자) 표현식/매개 변수
2) 매크로 정의의 역할은 코드의 가독성을 강화하고 수치 수정을 편리하게 하는 것이다
3) 예를 들어 매크로를 정의하여 두 개의 최대 값을 구하는 방법:
1 #define MAX(a,b) a>b?a:b
2 #include <stdio.h>
3 int main(){
4 printf(" :
");
5 scanf("%d%d",&a,&b);
6 printf(" :%d",MAX(a,b));
7 return 0;
8 }
11. 입력과 출력
1)scanf()/getchar()는 사용자의 입력 printf()/putchar()를 수신하여 정보를 출력하는 데 사용
2)scanf('포맷 문자열', 파라미터 주소 목록)scanf 입력 파라미터는 반드시'&'주소 기호를 붙여야 하며 문자열 그룹을 제외한다.scanf는 리턴 키에 따라 실행,
Tab이나 빈칸에 따라 문자를 구분하고 리턴은 수신이 끝났다는 것을 의미하며,scanf 수신 입력은 지정한 길이보다 길면 지정할 수 있습니다.
오른쪽에서 왼쪽으로 자르기;예: int a=12345;scanf('%3d', &a)printf('%d', a) 출력 결과 123;작은 입력 정보
지정된 너비에는 영향을 주지 않습니다.
3) printf("포맷 문자열", 출력 정보);printf에서 포맷 문자열에 숫자를 넣어서 출력 폭을 설정할 수 있습니다.
예를 들어 printf("%8d", 19)를 오른쪽으로 8개 길이 출력 19로 이동합니다.출력 데이터가 지정된 너비보다 크면 작동하지 않습니다
4)scanf 입력 버퍼 문제를 해결합니다. 즉,char (%c) 형식으로 입력할 때 입력이 있을 때 이번 입력을 건너갑니다.
코드 인스턴스:
1 short s;
3 printf(" Short
");
5 scanf("%hd",&s);
7 printf(" Short %hd
",s);
9 char c,last;
11 printf(" char
");
13 scanf("%c",&c);// %c
scanf("%c",&c);
15 //last=getchar();// getchar()
17 printf(" char %c
",c);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swift의 패스트 패스Objective-C를 대체하기 위해 만들어졌지만 Xcode는 Objective-C 런타임 라이브러리를 사용하기 때문에 Swift와 함께 C, C++ 및 Objective-C를 컴파일할 수 있습니다. Xcode는 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.