1. 程式人生 > >Linuxc基礎 七

Linuxc基礎 七

今天主要講了一些基礎的指標,陣列,函式。
程式碼
指標與函式程式碼:

#include <stdio.h>
int g_a;

void mySwap(int a, int b)
{
	int tmp = a;
	a = b;
	b = tmp;
}

void mySwap1(int *pa, int *pb)
{
	int tmp = *pa;
	*pa = *pb;
	*pb = tmp;
}

int g_b;

int main()
{	
	int a = 10;
	int b = 20;
	mySwap(a, b);
	
	printf ("a = %d, b = %d\n", a, b);
	
	{
		int a;
		a = 20;
	}
	
	printf ("a = %d, b = %d\n", a, b);
	
	mySwap1(&a, &b);
	printf ("a = %d, b = %d\n", a, b);
	return 0;
}

陣列程式碼:

#include <stdio.h>

int main()
{
	int a[]={2,4,6,5,4,2,6,3};
	int len=sizeof(a)/sizeof(int);
	
	int num=0;
	int num1=0;
	int num2=0;
	
	int i=0;
	for(i=0;i<len;i++)
	{
		num=num^a[i];
		
	}
	int count=1;
	while(1)
	{
		if(num & 1==1)
		{
			
			break;
		
		}
		num=num>> 1;
		count++;
	}
	for(i=0;i<len;i++)
	{
		int tmp=a[i]>>(count);
		if(tmp&1)
			num1^=a[i];
		else
			num2^=a[i];
			
	}
	printf("num1=%d\n",num1);
	printf("num2=%d\n",num2);

	return 0;
}

總結
今天講了很多的知識由陣列到指標再到函式,資訊量很大但是基礎的一些知識還是能聽懂的。也有些知識很難弄懂我想只有到程式中才有可能聽懂吧。今天對我來說收穫很大,這些收穫也正是我想要的。