>백엔드 개발 >C#.Net 튜토리얼 >C 언어에서 a++와 ++a의 차이점은 무엇입니까

C 언어에서 a++와 ++a의 차이점은 무엇입니까

王林
王林원래의
2020-07-11 09:45:2026478검색

C 언어에서 a++와 ++a의 차이점은 둘의 연산 과정이 다릅니다. a++는 a의 값을 먼저 사용한 다음 a에 1을 더한다는 의미입니다. 먼저 a 값을 다시 사용하십시오. a++ 및 ++a는 모두 [a = a+1]과 동일합니다.

C 언어에서 a++와 ++a의 차이점은 무엇입니까

자동 증가 연산자:

++는 자동 증가 연산자입니다. 예를 들어 a++, ++a는 a = a + 1과 동일합니다.

그래서 a++와 ++의 차이점은 무엇입니까? 에이?

++a와 a++의 동등한 결과는 동일하지만 작업 프로세스가 다릅니다. a++는 먼저 a의 값을 사용한 다음 a에 1을 추가합니다. ++a는 먼저 a에 1을 더한 다음 a의 값을 사용합니다.

예를 살펴보겠습니다:

    #include <stdio.h>  
    int main()  
    {  
        //int m = 10, n1, n2;  
        //n1 = m++;先将m的值赋给n1,然后m再做自增运算,所以此时,n1=10,m=11;  
        //n2 = ++m ;先将m做自增运算,然后在将运算后的m值赋给n2,所以此时,n2=11,m=11;  
      
        int a = 10,b =10, c, d;  
        c = (a++) + (++a);  
        //由上例n1=m++,n2=++m,m++=11可得出c=10+12;分析:前面括号所得值为10,而前面括号中的a经过自增运算后a的值为11,然后赋值给后面括号中的a,后面括号中的a经过自增运算后a的值为12,后面括号最后赋值为12;  
        d = (++b) + (b++);  
        //由上例n1=m++,n2=++m,++m=11可得出d=11+11;分析:前面括号所得值为11,而前面括号中的a经过自增运算后b的值为11,然后赋值给后面括号中的b,后面括号中的b先将值赋给后面括号,所以后面括号的值为11;  
        printf("c=%d\nd=%d\n",c,d);  
        return 0;  
    }

위 내용은 C 언어에서 a++와 ++a의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.