溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

指針數組和數組指針的區(qū)別以及main函數

發(fā)布時間:2020-07-16 14:15:13 來源:網絡 閱讀:286 作者:hat小坤 欄目:編程語言

1.C語言中的數組有自己特定的類型

2.數組的類型有元素類型和數組大小共同決定

3.C語言中通過typedef為數組類型重命名

typedef type(name)[size];

                        數組指針

1.數組指針用于指向一個數組

2.數組名是數組首元素的起始地址,但并不是數組的起始地址

3.通過將取地址符&作用于數組名可以得到數組的起始地址

4.可通過數組類型定義數組指針:

ArrayType* pointer;

5.也可以直接定義:type (*pointer)[n];pointr為數組指針變量名,type為指向的數組的類型;n為指向的數組的大小。

說白了數組指針就是數組的第一個元素的地址,就是一個指針,只不過這個指針是const指針,只讀。

#include <stdio.h>

typedef int(AINT5)[5];
typedef float(AFLOAT10)[10];
typedef char(ACHAR9)[9];//定義了3個數組類型

int main()
{
    AINT5 a1;
    float fArray[10];
    AFLOAT10* pf = &fArray;//AFLOAT10是數組類型,
    ACHAR9 cArray;
    char(*pc)[9] = &cArray;
    char(*pcw)[4] = cArray;
    
    int i = 0;
    
    printf("%d, %d\n", sizeof(AINT5), sizeof(a1));
    
    for(i=0; i<10; i++)
    {
        (*pf)[i] = i;
    }
    
    for(i=0; i<10; i++)
    {
        printf("%f\n", fArray[i]);
    }
    
    printf("%0X, %0X, %0X\n", &cArray, pc+1, pcw+1);
}

指針數組

1.指針數組是一個普通的數組

2.指針數組中每個元素為一個指針

3.數組指針的定義:type* pArray[n];type*為數組中每個元素的類型;parray為數組名;n為數組大小

說白了就是一個數組,里面的元素全都是指針類型的。


main函數

1.main函數可以理解為操作系統(tǒng)調用的函數

2.在執(zhí)行程序的時候可以向main函數傳遞參數

#include <stdio.h>

int main(int argc, char* argv[], char* env[])/*命令行參數的個數,命令行參數數組,環(huán)境變量數組
*/
{
    int i = 0;
    
    printf("============== Begin argv ==============\n");
    
    for(i=0; i<argc; i++)
    {
        printf("%s\n", argv[i]);
    }
    
    printf("============== End argv ==============\n");
    
    printf("\n");
    printf("\n");
    printf("\n");
    
    printf("============== Begin env ==============\n");
    
    for(i=0; env[i]!=NULL; i++)
    {
        printf("%s\n", env[i]);
    }
    
    printf("============== End env ==============\n");
}
main(int argc,char *argv)
{
  while(argc-->1)
      printf("%s",*++argv);
}

argc代表的是系統(tǒng)自動獲取命令的個數,char *argv代表指針數組,argc-->1表示,先和1比較,然后在自減.

總結:

  1. 數組指針本質上是一個指針

  2. 數組指針指向的值是數組的地址

  3. 指針數組本質上是一個數組

  4. 指針數組中每個元素的類型是指針

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI