一.在c语言中&和&&:
1.&:取地址符号
#include<stdio.h>
main()
{
int a;
scanf("%d",&a);
printf("%d",a);
}
代表输入一个数
2.&&:逻辑运算符号
#include<stdio.h>
main()
{
int a=-1,b=1,c=1,d,f;
d=a&&b
f=c&&c
printf("%d %d",d,f);
}
表示为逻辑与,逻辑与两边都为真,则为真;有一个为假,则为假。
3.补充:
|| :逻辑或,逻辑或两边,有一个为真,则为真;两个都为假,则为假。
二.在java中&和&&:
1.相同点:都为逻辑运算
2.不同点:在java中,&&与c语言中的语法规则一致;&语法也是逻辑与两边都为真,则为真;有一个为假,则为假,但是如果前面为真,&&则会不执行右边的,会产生“短路”现象,而&的左边判断为真,则会就行执行右边的。
package frist;
import java.util.Scanner;
public class second{
public static void main(String[] args) {
int a=1,b=2,c=-1,d;
d=a&b++
System.out.println(b);}
}
3.补充: |和||的区别也一样,| 在左边判断条件达成时,会继续执行右边的语句
总结:在不同语言中,相同的符号,但表示着不同的含义