Java&c/c++数组及动态分配内存对比

在Java里面,数组的申明使用及动态分配数组如下所示:
import java.util.Scanner;


public class Fun {

	public static void main(String[] args) {
               int[] a={1,2,3};
               for(int i=0;i<a.length;++i){
    	       System.out.println(a[i]);
             }
	       Scanner scan=new Scanner(System.in);
	       int     size=scan.nextInt();
	       String  strInput=scan.next();
	       scan.close();
	       char[] array=new char[size];//动态分配
	       for(int i=0;i<array.length;i++){
	    	   array[i]=strInput.charAt(i);
	    	   System.out.println(array[i]);
	       }		
	}
}

与之相比,在C/C++中略有不同,大家使用时注意一下即可,给出一点示例做对比:

#include<stdio.h>
int main()
{
	int count;
	scanf("%d", &count);
	int*p = new int[count];
	int*mark = p;
	int i;
	for ( i = 0; i < count; i++)
	{
		p[i] = i;
	}

	for (i = 0; i < count; i++)
	{
		printf("%d\n", *p);
		p++;
	}

	delete[]mark;
	return 0;
}




猜你喜欢

转载自blog.csdn.net/qq_31424423/article/details/80053987