用malloc來實現(xiàn)因為c的數(shù)組范圍是在編譯時就被分配空間的。所以要想像你那么做。就只能動態(tài)的分配內(nèi)存。我給你了分配和釋放的模板。你自己加賦值語句就可以了。雖然p是指針。但是用法上基本可以當(dāng)數(shù)組來用。有問題在追加吧。

成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),元江縣企業(yè)網(wǎng)站建設(shè),元江縣品牌網(wǎng)站建設(shè),網(wǎng)站定制,元江縣網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,元江縣網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
要滿足你所說的用戶輸入數(shù)組大小的要求,就要用動態(tài)數(shù)組。
在C語言里面對于數(shù)組的定義是不能通過變量來確定數(shù)組的大小的。如果一定要通過從外面輸入一個數(shù)來確定大小,只能通過動態(tài)分配的形式。
舉報| 評論 0 1 不可以,數(shù)組在定義的時候必須先給定大小。
定義動態(tài)數(shù)組,例如:include stdio.h include stdlib.h int len;char *str;printf(輸入數(shù)組的長度:);scanf(%d,&len);str=(char*)malloc(len*sizeof(char));為str分配分配len個字符大小的空間。
1、使用庫函數(shù)strlen()。strlen聲明在string.h中,原型為int strlen(char *str);功能為求str的長度,并返回。對于字符串str, 可以用代碼求長度。當(dāng)str[len]為0時,退出循環(huán),退出后的len值就是str的長度。
2、cout只能用于C++編譯,在VC0中,cout不支持64位長整型。
3、問題一:關(guān)鍵在輸入字符和字符串要避開回車及空格分隔符。這里可以用getchar解決。問題二:就是讓你函數(shù)調(diào)用。問題三:依然是函數(shù)調(diào)用,但需要函數(shù)1返回值或傳遞地址。
4、各種無符號類型量所占的內(nèi)存空間字節(jié)數(shù)與相應(yīng)的有符號類型量相同。但由于省去了符號位,故不能表示負(fù)數(shù)。下表列出了Turbo C中各類整型量所分配的內(nèi)存字節(jié)數(shù)及數(shù)的表示范圍。
strlen函數(shù)的原理你都搞錯了,其原型應(yīng)該是這樣的:int strlen(char );它接受的是一個char*類型的參數(shù),真不曉得你的這個是怎么傳遞進(jìn)去的。
strlen()只是統(tǒng)計字符串的長度,統(tǒng)計到\0結(jié)束,但不包括\0,這個與sizeof()不一樣。
函數(shù)定義中的參數(shù)不應(yīng)該是char, 而應(yīng)該是char 即int mystrlen(char * c)聲明和定義都改成上面的就可以了。
文章名稱:c語言len函數(shù)實例 length c語言
鏈接分享:http://chinadenli.net/article13/dsjppgs.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、建站公司、用戶體驗、網(wǎng)站設(shè)計、關(guān)鍵詞優(yōu)化、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)