1樓:匿名使用者
字元 hex dec
‘\0' == 0x00 == 0
從數值上說上面三個是相等的
'0' == 0x30 == 48
請lz注意他們的區別
你可以這樣理解strlen()函式的實現:
int strlen( char *str )
2樓:匿名使用者
定義的x是字元型陣列名,但在c語言中字元型變數可以被賦予整形資料,字串裡遇到結束符0='\0'就會結束,不管後面是否還有字元。
3樓:風元素精靈
c語言中字串是以'\0'表示結束的,‘\0’和0是相等的,因此x[0]=0等價於 x[0]='\0'
4樓:
在 c 這樣的 低階語言中 null , '\0' ,false 等 在 記憶體裡 都是 儲存 為 0x00
而在 後來的 高階語言裡, 這些 型別 是不同的,比如 vs編譯器下 vb , 這3個 值 是不一樣的
樓主 賦值語句 實際執行的結果 是:
x[0]=0x00;
x[1]=0x00;
x[2]=0x30;
x[3]='i';
x[4]='n';
x[5]='g';
x[6]=0x30;
所以 sizeof(x)=7
strlen(x))=0
5樓:細雨在微笑
你的問題是你不理解strlen這個函式的實現strlen 是計算的字串內有效字元的數目,**中應為 0.
strlen 在 習語言裡對應的中文函式是 字串長度歡迎使用 習語言(中英文c語言雙語編譯工具)
6樓:匿名使用者
你把0賦給想x了。0的ascll為null
c語言!7=0,為什麼
7樓:
c中的非0資料被定義為“邏輯真”,所以7是“真”;!是“邏輯非”運算子,“邏輯真”的非是“邏輯假”,“邏輯假”在c中規定用0表示。所以!7==0。
8樓:匿名使用者
非零值的反為零。
所以!7的值為0。
9樓:擺渡人生
非零的值均為 真
!為非 非真即假 即為0
不懂可追。。。。
10樓:猥瑣打造極品
非0值取du反是1,&&符號指的是邏輯zhi運算,兩邊的值只能是dao1或者是0,也就是說在專&&兩邊如果
屬是0,值就為0;如果非0,其值為1, 比如謝謝採納!
11樓:匿名使用者
非零值的反為零;零的反為1。
非零&&非零=1;零&&非零=0;非零&&零=0;零&&零=0。
這個c語言程式的輸出結果為什麼是7
12樓:無上陽光
遞迴嘛~
func(9) = 9 - func(7)func(7) = 7 - func(5)func(5) = 5 - func(3)func(3) = 3 - func(1)func(1) = 3;
一個個的遞迴算回去就可以了呀
func(3) = 0
func(5) = 5
func(7) = 2
func(9) = 7
所以返回7
13樓:匿名使用者
第一次. x = 9; p = 9 - func(7); func(7) = 7- func(5); func(5) = 5 - func(3); func(3) = 3 - func(1);
func(1) = 3; func(3) = 0; func(5) = 5; func(7) = 7 - 5= 2; func(9) = 9 - 2 = 7
這道c語言題的輸出結果為何不為4而是7
14樓:匿名使用者
注意case後沒有break,即跳入對應的分支後,繼續向下執行k==3時,n==0+3
k==2時,n==3+2
k==1時,n==5+1+1
c語言這個輸出是什麼,C語言,這個輸出是什麼???
首先你是不是打錯了,06.1d 應該是 06.1f 這樣才可能輸出,d輸出整形,沒辦法輸出浮點,然版後 06.1f中6是用六個位置,0是指第一個非零數字前用零填充,1小數點後保留1位小數,float又是單精度浮點數,過指定小數位自動四捨五入,是輸出 所以k 100 85.67,輸權出就是0085.7...
c語言問題為什麼輸出全是笑臉,C語言問題,為什麼輸出全是笑臉
高精度儲存大數時應該用int型,否則按字元輸出 具體看下ascii編碼 如需要修改程式,追問一下 把 while a n getchar n 一句中的 a n getchar 用括號括起來,改為 while a n getchar n 運算子優先順序的問題 while a n getchar n 語...
70在c語言是什麼意思,770在c語言是什麼意思
int a 7 7 定義一個數值,陣列名為a,擁有7行x7列49個整型資料元素,並且所有元素初始化為0 c語言中非7表示什麼?1 非是邏輯判斷,非 符號後面如果不是0,最後的邏輯組就是假,即邏輯0 符號後面如果是0,最後結果是邏輯1.2 7是非0的數字,所以 7的結果是邏輯0 希望可以幫到你,如果滿...