1樓:
char* strcpy(char* p,const char* q)
strcpy函式的功能是把字串q複製到p中,並不是你想象的是將兩個字串連線起來。
因此p中儲存的是字串"abcd"的首地址另外這個函式的返回值是複製後p的內容(也就是字串的首地址)因此這個返回值指向"abcd"因此結果是4
2樓:鬼火狼煙
char*p="abcdefgh";
這句p指向"abcdefgh"這個字串的首地址p+3,
這句把p指向的地址向前移動了3個char的長度.p本來指向存放a的記憶體空間,現在指向存放d的記憶體空間了.所以現在p指向的應該是"defgh"
cout< 這句strcpy(p,"abcd")把p開始的記憶體前5個char換成了"abcd"(因為是字串,所以"abcd"最後還有個'\0'),這個時候p字串從"defgh\0"變成了"abcd\0\0"由於字串碰到\0就結束了,所以實際strlen計算長度是到第一個'\0'為止,strlen計算的長度是不包括這個\0的,所以就是abcd的長度4 btw:樓上的xd該隱_墮的名字,難道出自"升龍道"中的那個老吸血鬼?哈哈,有意思 3樓:純意識生命 不要受前兩句的影響 第三句,strcpy把"abcd"複製到p,這時p中有資料a,b,c,d,\0,當然後面還有但我們不用管。 而strlen語句用來計算字串長度,原理是從頭數到「/0」,後面的就不再數 其結果就是 4 因為只數了a b c d 4樓:湛藍水晶 鬼火狼煙哪,p+3沒有改變p的指向呀 變成4是因為*p="abcd"了 不過這段程式有問題,p開始指向的是常量,strcpy對常量儲存區的內容進行了修改。 5樓:匿名使用者 你要注意: 1第一句是讓字元指標指向一個常量字串 2第二句實際上是一個沒有任何效果的語句 3第三句是先將字串abcd拷貝給字元指標p然後計算p所指向字串的長度 該題主要是看你對strcpy()函式的理解. 要注意strcpy()函式在拷貝完字串後是要加一個結尾符'\0'的. 所以strcpy(引數1,引數2);呼叫的時候一定要注意: 引數1(字串)的長度一定要比引數2(字串)的長度大至少1才不會出問題.! 6樓:我的奔程 char*p="abcdefgh"; p+3, cout< 所以求長為4 include include include include include using namespace std class rect int getl const int getw const int geth const private int length int width int h... 檔案輸入和輸出是很重要的 因為對於資料庫的訪問,就必須通過檔案的輸入輸出來解決。現在的資料一般都是儲存在檔案中的,比如某個學校的學生資訊,這些資訊肯定要事先儲存在檔案中,這些檔案可能是資料庫檔案也可能是一般的檔案,但絕不可能在使用c語言的時候再來現場輸入,所以當你使用c需要對這些資料進行處理,比如使... 樓上的說的很對了,不知道例子看懂沒有。我補充一下複雜一點的,不過應該可以加深你的理解,比如現在我們要寫一個判斷函式 int judge 假設a已定義 這樣我們可以接著用,假設a銀行使用者存款金額,judge函式用來判斷使用者的帳戶是否還有存款 接著寫下面的 void main 不知道對你有沒幫助,呵...C 菜鳥問題
C語言菜鳥問題
關於菜鳥C 的return問題!急!在先等待