對整數取關於10的模,然後加上『/0』識別符號作為字串的結束。因為在乙個整形之後加上'0',系統會將隱式轉為字元型。當然在c/c++庫中有乙個itoa函式能夠實現這個功能,但若要求不呼叫該**,而是自己實現,可參考如下:
**如下:
#include
using namespace std;
int main(void)
// or temp[i] = 0; is ok too!
temp[i] = '/0';
cout << "now the int num is converted" << temp << endl;
i = i - 1;
//processin the int to string
while(i >= 0)
//or str[j] = 0; is ok too!
str[j] = '/0';
for(int k = 0; k < j-1 ; k++)
cout << str[k] <<"_";
cout << str[j-1] << endl;
return 0;
}1.字元陣列初始化問題:
字元陣列有兩種初始化形式:
char ch;
ch = "12345";
ch = ;
第一種稱為字串初始化,系統會預設在結尾處新增/0作為額外的終止空字元。即這種方法初始化的ch是6維的。
第二種稱為花括號初始化,單個字元並不需要新增額外的終止空字元,此時ch是5維的。
用以下**來進行以下驗證:
#include
void main()
;cout <<"length of ch1:" << sizeof(ch1) << endl;
cout <<"length of ch2:" << sizeof(ch2) << endl;
}執行結果為:
length of ch1:6
length of ch2:5
2.字串end
在**中temp[i] = 0和temp[j] = '/0';是等價的。
php面試題猴子123報數(猴子選大王)
題目就是有n個猴子,123迴圈報數數到3的猴子被踢出下乙個接著報數,一遍一遍的迴圈直到剩餘乙個猴子,求這個猴子是最開始的第幾號猴子。我想到了兩個方法 第乙個就是模擬報數的模式 每到3的時候unset乙個元素 最後剩餘的就是 要求的猴子。大概是這個樣子 num 0 arr array 1,2,3,4,...
面試題 字串轉位元組
這是遇到的面試題,請問i j 為什麼?string str1 abcd測試一下 var strtobytes1 system.text.encoding.utf8.getbytes str1 var i strtobytes1.length var j str1.length 答 i 16 j 8 ...
面試題 和為 n 連續正數序列
題目 輸入乙個正數 n,輸出所有和為 n連續正數序列。例如輸入 15,由於 1 2 3 4 5 4 5 6 7 8 15,所以輸出 3 個連續序列 1 5 4 6和 7 8。方法一 首先判斷n最多能由幾個連續數的和得到,假設最多由m個連續數和得到,那麼m m 1 2 n這樣很容易求得 m sqrt ...