1樓:
i++是先引用i的值,然後i自加1
'\0'是字串結束符
2樓:匿名使用者
a貌似是個函式,i作為引數處理
'\0'是一個字元,一般作為判斷字串是否結束使用
3樓:飛揚
i=0表示i從0開始和後面的i++相聯絡 即表示為i從0開始一次加1 i++的意思是i+1
\0表示 空操作字元 其ascll碼為0所以a(i)!='\0'則表示為a(i)此時的值的ascll碼不等於0 !=即表示「不等於」的意思
所以整個語句的意思是「i從1開始 a(i)一次取值當a(i)的ascll碼值不等於0時,i加上1往下取值 當等於0時語句結束
4樓:匿名使用者
你看到的**應該是下面這樣的吧?
for(i=0;a[i]!='\0';i++)這是c語言中的迴圈語句。表示:
i從0開始計數,如果a[i]不為0,那麼就執行迴圈體內部的**,執行之後i自加1。
a應該是一個字元陣列(字串),類似char a[200]這樣定義的,那麼a[i]表示取a字串第i-1個字元(因為c語言字元陣列下標從0開始計數)。
看看書裡關於for迴圈和字串的章節。
c語言中i=0;a〔i〕!=′\0′;i++是什麼意思?特別a〔i〕!=′\0′是什麼意思?
5樓:抄永望瀧赫
sizeof(a)
就是a陣列,佔的位元組數
sizeof(*a)
就是相當於a[0],佔的位元組數
sizeof(a)/sizeof(*a)
陣列a的個數
/2就是總個數再除2,就是一半了
6樓:昔書文倪浩
i++是先引用i的值,然後i自加1
'\0'是字串結束符
7樓:圖門曲靜蕢穆
i=0表示i從0開始和後面的i++相聯絡
即表示為i從0開始一次加1
i++的意思是i+1
\0表示
空操作字元
其ascll碼為0所以a(i)!='\0'則表示為a(i)此時的值的ascll碼不等於0
!=即表示「不等於」的意思
所以整個語句的意思是「i從1開始
a(i)一次取值當a(i)的ascll碼值不等於0時,i加上1往下取值
當等於0時語句結束
8樓:皋翰翮陳昆
你看到的**應該是下面這樣的吧?
for(i=0;a[i]!='\0';i++)這是c語言中的迴圈語句。表示:
i從0開始計數,如果a[i]不為0,那麼就執行迴圈體內部的**,執行之後i自加1。
a應該是一個字元陣列(字串),類似chara[200]這樣定義的,那麼a[i]表示取a字串第i-1個字元(因為c語言字元陣列下標從0開始計數)。
看看書裡關於for迴圈和字串的章節。
c語言中while(a[i]!='\0')中的'\0'是什麼意思
9樓:南京新華電腦專修學院
果s是一個char型指標;0'!=')
也即int i=0
while(s[i];
int i=0
while(s[i];
是對的,也即char *s
10樓:匿名使用者
'\'是個轉義符,'\0'他的值就是0,那你問為什麼不直接用0,如果用0的話編譯器至少得把他當做整數來對待,就佔4個位元組,'\0'強調了是一個位元組的0值,類似的還有比如\r(0xd),\n(0xa),很多鍵盤無法輸入的或者在源**中不能更好表達的就用轉義符來代替了
c語言中a[i]!='\0'啥意思
11樓:滄海雄風
a[i]不等於結束符
一般用於字串for迴圈結束條件
for(int i=0;a[i]!='\0';i++)
12樓:匿名使用者
字串儲存的時候以'\0'結尾,一般a[10]="abcdsf";在f的後面有'\0';
a[i]!='\0'也就是說遍歷這個字串;
c語言中 *(a+i)!='\0' 什麼意思
13樓:載建碧盼柳
如果a是一個一維陣列.如a[5]那*(a+i)!=`\0`;是指a[i]這個元素不為空格,如果是迴圈就執行到該陣列結束為止,除非中間遇到元素是空格.
c語言中a[i]=0和a[i]='\0'有沒有區別 10
14樓:天雲一號
a[i]=0和a[i]='\0'是有區別的,也是有相同點的,下面分兩種情況討論如下:
1、陣列a是數值型(以內int為例)容
int a[4];
a[0] = '\0';
a[1] = 0;
printf("%d\n", a[0]); // 輸出0
printf("%d\n", a[1]); // 輸出0
上面的結果是相同的,即對於數值型陣列,兩者是一樣的。
2、陣列a是字元型
a[i]=0表示將ascii碼值為0所對應的字元賦值給陣列元素a[i];
a[i]='\0'表示將結束標誌字元'\0'賦值給陣列元素a[i],即去掉i+1後面的所有元素;
char a="abcd";
a[2] = '\0';
a[1] = 0;
printf("%c\n", a[1]); // 輸出為空,因為ascii碼值為0所對應的字元為null
printf("%s\n", a); // 輸出a,因為字串到第3個字元就結束了而第二個被賦值為null(不可見),所以只輸出字元a
15樓:匿名使用者
有區別啊,a[i]=0表示等於數值0轉化為ascii碼就是48,而表示等於ascii碼的0,如果a[i]表示字元,則'\0'表示字串結束
16樓:匿名使用者
沒有差別抄,你可以試一下
#include
#include
main()
樓上說的沒bai錯,但是a[1]=0;就是把duascii值賦成zhi0。記住a[i]=0和a[i]='0'是不一樣的!!
dao!
17樓:匿名使用者
#include
main()
輸出結果為0 48 0;
c語言中,賦值語句a=a++,i++;是什麼意思?謝謝
18樓:swordfish劍魚
是這樣的:源
語句a=a++,i++; 是一個逗號表達bai式du;
逗號zhi
表示式的格式dao
是表示式1,表示式2,表示式3...表示式n逗號表示式的值等於最後一個表示式的值,各個表示式之間可以沒聯絡。
所以i++的值就是整個式子的值,與a無關。
19樓:匿名使用者
1、計算a=a++
2、計算i++
3、第2步的計算結果作為整個表示式的最後結果,並丟棄,與a的賦值無關 。
20樓:hdu我愛c語言
a++就是a的自加,雖然說 a=a+1 和意思一樣,但是a++的效率比a=a+1高很多!
21樓:笨笨
a++等於a=a+1。。。
22樓:一場鬧劇
自加的意思,a+1賦給a
23樓:匿名使用者
a++是a=a+1
i++是i=i+1
24樓:匿名使用者
家用電器最好的保養方法是什麼?
c語言中!='\0' 是什麼意思
25樓:過兒兒兒兒兒兒
!='\0'.就是執行到字串結尾時結束。
!的意思是非,亦可以理解成不。『\0』是字串的結束符號,由編譯器自動加上。
比如說,把一個字串賦值給陣列:u8 str1=;實際上陣列str1在記憶體中的實際存放情況為: c x j r .
2 1 i c . o r g '\0' 這後面的'\0'是由c編譯系統自動加上的。
所以在用字串賦初值時一般無須指定陣列的長度, 而由系統自行處理。 把字元陣列str1中的字串拷貝到字元陣列str2中。串結束標誌'\0'也一同拷貝。
但是……也有一些例外情況發生。比如,當陣列長度不夠。假設我們指定了陣列長度,如:u8 str1[13]=;由於字元組str1的長度為13,所以後面的資訊會丟失,即'\0'丟失。
另外,如果在給陣列賦值時,把每個字元單獨用引號括起來。也會丟失'\0'。如:
u8 str1=;如果希望陣列以'\0'結束,則要麼寫成:u8 str1=;要麼寫成(人工新增'\0'):u8 str1=;要麼寫成(故意給陣列預留一個空位):
u8 str1[14]=;。
26樓:小莫
在c語言中,!='\0' 是沒有結束的意思。
其中,!=是關係運算號,\0(空字元)是字串的結束碼。
例如:char s = "10";
printf("%s\n", s);
printf("s[1]:%d\n", s[1]);
printf("s[2]:%d\n", s[2]);
printf("s[1]:%c\n", s[1]);
printf("s[2]:%c\n", s[2]);
char u = ;
cout << sizeof(u) / sizeof(*u) << endl;
char v = "hello";
cout << sizeof(v) / sizeof(*v) << endl;
列印結果如下圖:
擴充套件資料:
在c語言中,運算子總共包括以下十類:
1、算術運算子
用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求餘(或稱模運算,%)、自增(++)、自減(--)共七種。
2、關係運算子
用於比較運算。包括大於(>)、小於(<)、等於(==)、 大於等於(>=)、小於等於(<=)和不等於(!=)六種。
3、邏輯運算子
用於邏輯運算。包括與(&&)、或(||)、非(!)三種。
4、位操作運算子
參與運算的量,按二進位制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。
5、賦值運算子
用於賦值運算,分為簡單賦值(=)、複合算術賦值(+=,-=,*=,/=,%=)和複合位運算賦值(&=,|=,^=,>>=,<<=)三類共十一種。
6、條件運算子
這是一個三目運算子,用於條件求值(?:)。
7、逗號運算子
用於把若干表示式組合成一個表示式(,)。
8、指標運算子
用於取內容(*)和取地址(&)二種運算。
9、求位元組數運算子
用於計算資料型別所佔的位元組數(sizeof)。
10、特殊運算子
有括號(),下標,成員(→,.)等幾種。
27樓:靠名真tm難起
!='\0' 是沒有結束的意思。\0(空
字元)是字串的結束碼。例如:在求字串長度時,有一句是while (ch[i++]!='\0')
當字元ch[i++]不等於結束符'\0'時.字串最後都會有一個結束符,例如,
char a[100];
scanf("%s",a);
你輸入字串china之後,那麼字串陣列中a[0]=='c',a[1]=='h'.a[5]=='a' a[6]=='\0'
28樓:匿名使用者
字串都是以'\0'結束的,如
char str[6]="hello";
而在記憶體中則是"hello\0"
即你申請了6個空間,但只能用5個,最後一個用來放'\0'。表示字串結束。
例如下面一個查詢str末尾的程式
while(*str != '\0')
有時也可以把'\0'直接放在字串末尾,用來表示該字串結束。如:
char str[10];
for(i=0;i<5;i++)
str='\0';
希望對你有用
29樓:雙魚婦聯鋼鐵俠
這是c語言中的if巢狀,寫成這樣你或許就認識了:
if(x }意思就是x 如果滿足x 在c語言中,for i 0 i 2,i 這樣的迴圈體會執行2次 分別是i 0和i 1時的情況 它的執行流程是這樣的 首先給變數i賦初值0,然後判斷,若滿足條件i 2 是 就執行迴圈體的語句,完成後再i 即 i i 1 i 變成1,然後再次判斷是否滿足條件i 2 仍是 就再執行迴圈體的語句,完成後再i... i 就是先進行i 運算,然後再取其負值。下面是c語言運算子的優先順序 與負號處於同一優先順序,而結合方向是從右到左,所以是先進行i 運算,再取負號。i 就是把i自減1,但是它的返回值卻是i,這就是i 與 i的區別,i的返回值就是i 1了。具體看下面一個程式 include int main void... i 3 就是i除以3的餘數。如果是作為邏輯表示式,那就是 i除以3的餘數不等於0 是求餘符號,比如說7 就是7 3然後求出 回2.答.1 那這個7 3 1 在c語言中i 3是什麼意思 是c語言中的自加賦值運算子 x 3 相當於 x x 3 與之相類似的運算子還有 自乘一個 數專 自減一個數 自除屬一...c語言中fori0i《2i是什麼意思
c語言中 i啥意思,C語言中a i 是什麼意思
c語言中i3是什麼意思,在c語言中i3是什麼意思