面試題53 把字串轉換為整數

2021-07-09 10:55:38 字數 729 閱讀 8836

題目:

把字串轉換為整數。

思路:這題不難,注意邊界條件及異常。

??成員變數的初始化順序是怎樣的?

下面**的輸出:

#include #include using namespace std;

class a

void print(){

cout << "n1:" << n1 << ", n2: " << n2 <

分析:    

1、成員變數在使用初始化列表初始化時,與建構函式中初始化成員列表的順序無關,只與定義成員變數的順序有關。因為成員變數的初始化次序是根據變數在記憶體中次序有關,而記憶體中的排列順序早在編譯期就根據變數的定義次序決定了。這點在effectivec++中有詳細介紹。

2、如果不使用初始化列表初始化,在建構函式內初始化時,此時與成員變數在建構函式中的位置有關。

3、注意:類成員在定義時,是不能初始化的

4、注意:類中const成員常量必須在建構函式初始化列表中初始化。

5、注意:類中static成員變數,必須在類外初始化。

6、靜態變數進行初始化順序是基類的靜態變數先初始化,然後是它的派生類。直到所有的靜態變數都被初始化。這裡需要注意全域性變數和靜態變數的初始化是不分次序的。這也不難理解,其實靜態變數和全域性變數都被放在公共記憶體區。可以把靜態變數理解為帶有「作用域」的全域性變數。在一切初始化工作結束後,main函式會被呼叫,如果某個類的建構函式被執行,那麼首先基類的成員變數會被初始化。 

面試題33 把字串轉換為整數

c語言的庫函式atoi 的作用是將乙個字串轉換為整數。寫乙個函式strtoint,實現這一功能。寫乙個函式strtoint實現將字串轉換為整數的功能.cpp 定義控制台應用程式的入口點。include stdafx.h include using namespace std 特殊情況 1.字串為空指...

把字串轉換為整數

題目 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0 思路 若為負數,則輸出負數,字元0對應48,9對應57,不在範圍內則返回0,並列印錯誤資訊 public class strtoint public static int strtoint ...

C語言把整數轉換為字串

各位可能在網上看到用以下函式可以將整數轉換為字串 itoa 將整型值轉換為字串 ultoa 將無符號長整型值轉換為字串 請注意,上述函式與ansi標準是不相容的,很多編譯器根本不提供這幾個函式,本文就不介紹了,沒什麼意義。將整數轉換為字串而且能與ansi標準相容的方法是使用sprintf 和snpr...