bloggerads

2013年9月19日 星期四

C++ : string

Example 1

+  //
+  // Find all key world position in a string
+  //
+
+  #include <stdio.h>
+  #include <iostream>       // cout
+  #include <string>         // string
+  
+  int main ()
+  {
+    std::string str ("xx23xx67xxabcdxx");
+    std::string key ("xx");
+  
+    for (int pos = str.find(key) ; pos >= 0; ) 
+    { 
+        printf( "xx at: %d\n", pos);         
+        pos = str.find(key, pos+1); 
+    }
+  
+    return 0;
+  }

___________OUTPUT____________
xx at: 0
xx at: 4
xx at: 8
xx at: 14

Example 2

+  //
+  // string -> char array
+  // char array -> string
+  //
+
+  #include <stdio.h>
+  #include <string>
+  #include <string.h> //strncpy
+  
+  int main () {
+    char c1[]="123";
+    std::string cpp(c1); // char array -> string
+    printf("%s\n", c1);
+    
+    char c2[10];
+    for(int x=0; x<sizeof(c2); c2[x]=0, x++); // Reset c2
+    strncpy(c2, cpp.c_str(), sizeof(c2)-1); // string -> char array
+    
+    printf("%s\n", c2);
+    return 0;
+  }

___________OUTPUT____________
123
123

Example 3

+ #include <stdio.h>
+ #include <string>
+ #include <sstream>
+ // #include <iostream> cout

+
+ int main()
+ {

+    std::stringstream ss;
+    std::string str;
+    //
+    // int -> string 
+    // 
+    int i= 20;
+    // ss.clear();
+    // str = std::st_string(i);
+    ss << i;
+    ss >> str;
+    std::cout << "int -> string " << str << std::endl;
+    printf("----------------------------\n");
+    //
+    // string -> int 
+    //
+    int ival;
+    ss.clear();
+    ss << str;
+    ss >> ival;
+    std::cout << "string -> int " << ival << std::endl;
+    
+    return 0;
+ }

沒有留言:

張貼留言