1樓:
重新移動了字串結束的位置而已,舉例說明:
源字串src為" flyhorse loves 小梅"
1,執行到*(p+end)='\0'的時候,src就是" flyhorse"了;
2,執行了最後的*p='\0',src就是"flyhorse"了,否則src就是"flyhorse ";
(p指標的重定位操作就在p++,p一旦移位,字串結束位置也需要移位)
2樓:
最後一行*p = '\0';可以省去,因為此時的*p與先前的*(p+end)說的應是同一位置的值,前面已將其賦值為'\0'了,但沒有向前移位,所以要把移位的最後一位也設定為'\0',也就是說,你的理解只對了一半兒!
如果缺少最後一行的*p = '\0';會有一小段重複的子串.
3樓:
不是唯讀第乙個單詞麼 ? 第1個單詞和第2個單詞之間不是用空格鍵隔開的麼?所以只要讀到空格鍵就行了,其他的都扔掉。。。。
char *p=&string;
if( *p !=『 』)
4樓:
每個字串都是\0結束了 如果沒有他就會出現亂碼
5樓:暈我不知道是誰
'\0'表示字串的終止。如果沒有這個字元,就無法知道這個字串是在什麼地方結束的。
c語言一簡單習題
6樓:析青文
這裡面,011&10==a 是什麼意思?&是什麼運算,具體怎麼運算?求大神
&是「與」運算子
0&0=0 0&1=0 1&0=0 1&1=1011是八進位制數轉為十六進製制是0x09
10是十進位制數轉為十六進製制是0x0a
011&10就是0x09&0x0a也就是1001&1010=1000=0x08
所以 011&10==a 意思是如果a的值等於8則執行 printf ( 」 %d!\n 」 , a);
7樓:匿名使用者
&是按位「與」的意思。具體運用如下:
按位「與」運算子
規定如下:
0&0=0 0&1=0 1&0=0 1&1=1例如: 3&5=?
3的二進位制: 00000011
5的二進位制: 00000101
-------------------------------& 00000001
所以3&5=1
----------------------------望採納啊!!!o(∩_∩)o~
8樓:
c語言中&運算子一般來說,有兩種意義:
1. 按位「與」 例如 1101&0010=0000;
2. 取位址 在指標中使用,int *p = &a; 就是取a 位址的意思。
你的問題中011&10=010也就是十進位制的2,011&10==a即2==a。
以上僅供參考,希望對你有幫助。
9樓:丁倫煦
是按位進行與運算。
相當於如果a等於0。
幫做出c語言程式,乙個簡單的練習題
10樓:緩緩掉落的松針
6.#include
void fun()
int main()
void one_three()
int main()
關於c語言的乙個很簡單的練習題!
11樓:匿名使用者
scanf("%d,&a"); 寫錯了
scanf("%d",&a);
c語言簡單的練習題?
12樓:匿名使用者
該表示式的值為 7 逗號表示式的值就是最後乙個式子的值(逗號表示式的運算順序是從左到右)
變數x的值是 2 x這個變數初始賦值為1 然後經過x++; 自身加了1 所以變成2了
x+5並沒有給x賦值
變數y的值是 3 這個幾乎不用問肯定是3啦 y=3 如果y不等於3 那就見鬼了
13樓:
在c語言中逗號「,」也是一種運算子,稱為逗號運算子。 其功能是把兩個表示式連線起來組成乙個表示式, 稱為逗號表示式。
其一般形式為:
表示式1,表示式2
其求值過程是分別求兩個表示式的值,並以表示式2的值作為整個逗號表示式的值。
1) 逗號表示式一般形式中的表示式1和表示式2 也可以又是逗號表示式。
例如:表示式1,(表示式2,表示式3)
形成了巢狀情形。因此可以把逗號表示式擴充套件為以下形式:
表示式1,表示式2,…表示式n
整個逗號表示式的值等於表示式n的值。
2) 程式中使用逗號表示式,通常是要分別求逗號表示式內各表示式的值,並不一定要求整個逗號表示式的值。
並不是在所有出現逗號的地方都組成逗號表示式,如在變數說明中,函式引數表中逗號只是用作各變數之間的間隔符。
所以結果是7,2,3;
注意,最後的(x+5)只是用x參與運算,並沒有改變x的值
14樓:無名
表示式的值是7
x的值是2
y的值是3
逗號表示式是依次運算,取最後乙個表示式的值,所以表示式的值是7x執行x++後加1所以是2
y賦值為3
15樓:匿名使用者
該表示式的值是( 3 ),變數x的值是( 2 ),變數y的值是( 3 )。
x++:x原來的值是1,在這裡自加1後,x變成2;
16樓:我小你小愛
該表示式的值是( 3 ),變數x的值是( 2 ),變數y的值是( 3 )。
17樓:鳳萱庚錦
第一題:
賦值符號"="右邊是由常量,變數,運算子,和函式組成的表示式.a,b中第乙個"="右邊不是乙個表示式.
逗號表示式形式是:表示式1,表示式2,..,表示式n;按從左到右的順序逐個求解表示式.
整個表示式的值就是最後乙個表示式n的值.所以c是乙個逗號表示式;加乙個闊號可以與周圍其他逗號區分開,在這裡不會有錯.
一條語句必須加分號,復合語句必須加中括號.明顯d錯了.
正確選c
第二題.
自加自減運算子優先與加減運算子;
並且按自右向左順序執行,顯然--i,被先合併了.被執行了,那麼此刻i就是等於2,所以再執行-的時候變成了2-2,答案自然是a啦.哈
說明下++,--只能和變數組合,當然右邊優先.
+++,---你要怎麼拆,首先給我拆給變數,兩邊都是變數當然又是右邊優先啦
18樓:本起雲運鵑
1.c是標準的逗號表示式
ab的話是因為
等號左邊不可以是乙個表示式
d的話如果是一句,那麼少了括號,如果是兩句,那麼當中應該是分號2.從右往左,如果是-i那麼是不對的,所以!我認為!
是i---i,那麼就是
3-2=1
所以是a,我是這麼認為的,不知道對不對
19樓:宮倫欽雨
第一題應該是d吧,看下書上概念,我記不清楚啦(修改1.c
是標準的逗號表示式,恩,是這樣的)
i---i相當於
i-(--i)所以值為0
因為自增自減的優先順序高於算術運算子,而自增自減運算子的結合方向是自右向左,所以跟後面的i結合;
c語言簡單習題,C語言簡單習題 auto int b 0 。。。。
auto宣告後,每次呼叫這個函式都會將這個b重定義為0 而進行stable宣告後,c將不會被改變,所以值是不同的 第一次迴圈 a 5 這個是固定的 b 0 1 1 自增運算子 c 1 3 4 返回一個值並輸出a b c 10 第二次迴圈 a 5 b 0 1 2 在這裡重置 c 4 3 7 而它並沒有...
c語言練習題,C語言基礎練習100題 含標準答案
c d a c d a d d d b a a a d b c b a b d c c a d b a d a d b 天蠍森林 1.c 2.b 3.a 4.c 5.d 6.c 7.c 8.d 9.d 10.b 12.b 13.a 14.c 15.b c語言基礎練習100題 含標準答案 文庫精選 內...
C語言簡單的問題,C語言簡單的問題
岔路程式緣 結果是60。int p 4 的含義 宣告p是指向含有4個整型元素的一維陣列的指標變數。其中 星號 代表指標 圓括號 與後面的方括號搭配代表指向一維陣列 4一維陣列的元素個數 int代表一維陣列元素的變數型別為整型。本例來講,宣告p並讓p指向a,其實p就把陣列a分成了三個一維陣列 1.3....