一段错误代码

// ptrstr.cpp -- using pointers to srings
#include 
#include    // declare strle(), strcpy()
int main()
{
    using namespace std;
    char animal[20] = "bear";  // animal holds bear
    const char * bird = "wren";  // bird holds address of string 
    char * ps;                 // uninitialized
    
    cout << animal << " and";  // display bear
    cout << bird << "\n";      // display wren
    // cout << ps << "\n";     // may display garbage, may cause a crash
    
    cout << "Enter a kind of animal: ";
    cin >> animal;             // ok if input < 20 chars
    // cin >> ps; Too horrible a blunder to try; ps doesn't
    //            point to allocated space
    
    ps = animal;               // set ps to point to string
    cout << ps << "!\n";       // ok, same as using animal
    cout << "Before using strcpy():\n";
    cout << animal << " at " << (int *) animal << endl;
    cout << ps << "at" << (int *)ps << endl;
    
    ps = new char[strlen(animal) + 1];  //get new storage
    strcpy(ps, animal);                // copy string to new storage
    cout << "After using strcpy():\n";
    cout << animal << " at " << (int *) animal << endl;
    cout << ps << " at " << (int *) ps << endl;
    delete [] ps;
    return 0;
}

// ptrstr.cpp -- using pointers to srings
#include 
#include    // declare strle(), strcpy()
int main()
{
    using namespace std;
    char animal[20] = "bear";  // animal holds bear
    const char * bird = "wren";  // bird holds address of string 
    char * ps;                 // uninitialized
    
    cout << animal << " and";  // display bear
    cout << bird << "\n";      // display wren
    // cout << ps << "\n";     // may display garbage, may cause a crash
    
    cout << "Enter a kind of animal: ";
    cin >> animal;             // ok if input < 20 chars
    // cin >> ps; Too horrible a blunder to try; ps doesn't
    //            point to allocated space
    
    ps = animal;               // set ps to point to string
    cout << ps << "!\n";       // ok, same as using animal
    cout << "Before using strcpy():\n";
    cout << animal << " at " << (int *) animal << endl;
    cout << ps << "at" << (int *)ps << endl;
    
    ps = new char[strlen(animal) + 1];  //get new storage
    strcpy(ps, animal);                // copy string to new storage
    cout << "After using strcpy():\n";
    cout << animal << " at " << (int *) animal << endl;
    cout << ps << " at " << (int *) ps << endl;
    delete [] ps;
    return 0;
}
// ptrstr.cpp -- using pointers to srings#include #include    // declare strle(), strcpy()int main(){    using namespace std;    char animal[20] = "bear";  // animal holds bear    const char * bird = "wren";  // bird holds address of string     char * ps;                 // uninitialized        cout << animal << " and";  // display bear    cout << bird << "\n";      // display wren    // cout << ps << "\n";     // may display garbage, may cause a crash        cout << "Enter a kind of animal: ";    cin >> animal;             // ok if input < 20 chars    // cin >> ps; Too horrible a blunder to try; ps doesn't    //            point to allocated space        ps = animal;               // set ps to point to string    cout << ps << "!\n";       // ok, same as using animal    cout << "Before using strcpy():\n";    cout << animal << " at " << (int *) animal << endl;    cout << ps << "at" << (int *)ps << endl;        ps = new char[strlen(animal) + 1];  //get new storage    strcpy(ps, animal);                // copy string to new storage    cout << "After using strcpy():\n";    cout << animal << " at " << (int *) animal << endl;    cout << ps << " at " << (int *) ps << endl;    delete [] ps;    return 0;}









// limits.cpp -- some integer limits
#include 
#include 
int main()
{
    using namespace std;
    int n_int = INT_MAX;
    short n_short = SHRT_MAX;
    long n_long = LONG_MAX;
    long long n_llong = LLONG_MAX;

    cout << "int is " << sizeof n_int << " bytes." <

你可能感兴趣的:(一段错误代码)