1. 程式人生 > >C指標(*++argv)[0]和*++argv[0]的區別

C指標(*++argv)[0]和*++argv[0]的區別

*argv[]在linux系統中是輸入引數的集合,其中argv[0]指向呼叫的程式名稱,後面才是使用者輸入的引數;

( *++argv)[0]*++argv[0]表達的是什麼意思呢?
其實他們有自己特定的意義。
先對他們進行分析,根據結合性,[]的優先順序要大於*和++, *和++都屬於單目運算子,優先順序是一樣的,且遵從右結合性;
那麼*++argv[0]的結合性就相當於

int i=0;
argv[0][++i]
意思是遍歷第一個字串,argv[0]

(*++argv)[0]根據結合性可以看做是

int i=0;
argv[++i][0]
其作用是取每個字串的第一個字元;