C++数组学习笔记四
数组:是在内存中连续存储的一组同种数据类型的元素。
数组声明形式:type name [elements];例如:int billy [5];
中括号[]域必须是一个常量数值。
"初始化数组,声明一个全局数组,则它的内容将被初始化为所有元素均为0。
声明一个变量的同时把初始值赋给数组中的每一个元素。例如:int billy [5] = {16, 2, 77, 40, 12071};
{}中元素值个数必须和数组声明时中括号中指定的数组长度相符,但允许[]空白。例如:int billy [] = {16, 2, 77, 40, 12071};"
存取数组中数值
在程序中我们可以读取和修改数组任一元素的数值,像操作其他普通变量一样。格式:name [index]
"// arrays examlple
#include <iostream.h>
int billy [] = {16, 2, 77, 40, 12071};
int n, result=0;
int main () {
for (n = 5; n < 5; n++) {
result += billy[n];
}
cout << result;
return 0;
}
输出结果:12206"
多维数组可以被描述为数组的数组。
数组参数:数组作为参数传给函数。
"例如:
// arrays as parameters
#include <iostream.h>
void printarra (int arg[], int length) {
for (int n=0; n<length; n++) {
cout << arg[n] << "" "";
}
cout << ""\n"";
}
int main () {
int firstarray [] = {5, 10, 15};
int secondarray [] = {2, 4, 6, 8, 10};
printarray (firstarray, 3);
printarray (secondarray, 5);
return 0;
}
输出结果:5 10 15
2 4 6 8 10
"
字符序列:字符数组经常存储短语其总长度的字符串,一般在后面加结束字符可以写为0或者'\0'。
"初始化以空字符结束的字符序列:例如
char mystring[] = { 'H', 'e', 'l', 'l', 'o', '\0' };
字符串常量初始化例子:
char mystring [ ] = ""Hello"";"
"注意:同时给数组赋多个值只有在数组初始化时,也就是在声明数组时,才是合法的。
例如下面都是不合法的:
mystring = ""Hello"";
mystring[ ] = ""Hello"";
mystring = { 'H', 'e', 'l', 'l', 'o', '\0' };
"
给字符序列的赋值
使用函数strcpy,例如:
"// setting value to string
#include <iostream.h>
#include <string.h>
int main () {
char szMyName [20];
strcpy (szMyName, ""J.Soulie"");
cout << szMyName;
return 0;
}
输出结果:J. Soulie"
cin.getline输入字符串,例如:
"// cin with strings
#include <iostream.h>
int main () {
char mybuffer [100];
cout << ""What's your name?"";
cin.getline (mybuffer, 100);
cout << ""Hello "" << mybuffer << "".\n"";
cout << ""Which is your favourite team?"";
cin.getline (mybuffer, 100);
cout << ""I like "" << mybuffer << "" too.\n"";
return 0;
}
输出结果:What's your name? Juan
Hello Juan.
Which is your favourite team? Inter Milan
I like Inter Milan too.
"
字符串和其他数据类型的转换;
"atoi:将字符串string转换为整型int
atol:将字符串string转换为长整型long
atof:将字符串string转换为浮点型float"
"例子:
// cin and ato* functions
#include <iostream.h>
#include <stdlib.h>
int main () {
char mybuffer [100];
float price;
int quantity;
cout << ""Enter price:"";
cin.getline (mybuffer, 100);
price = atof (mybuffer);
cout << ""Enter quantity:"";
cin.getline (mybuffer, 100);
quantity = atoi (mybuffer);
cout << ""Total price:"" << price * quantity;
return 0;
}
输出结果:Enter price: 2.75
Enter quantity: 21
Total price: 57.75
"
字符串操作函数;函数库cstring(string.h)
strcat: char* strcat (char* dest, const char* src);//将字符串src附加到字符串dest的末尾,返回dest
strcmp: int strcmp (const char* string1, const char* string2);// 比较两个字符串string1和string2。如果两个字符串相等返回0
strcpy: char* strcpy (char* dest, const char* src);// 将字符串src的内容拷贝给dest,返回dest
strlen: size_t strlen (const char* string); // 返回字符串的长度
注意:char* 与 char[]相同
分享到:
相关推荐
C++数组的学习笔记(入门) C++数组是一种重要的数据结构,数组是相同类型元素的集合。在C++中,数组可以分为一维数组、二维数组和字符数组等。本文将对C++数组的定义、初始化和引用进行详细的介绍。 一维数组 一...
C++学习随笔,学写了C++的有关知识,有些代码敲打气啦比较费劲,现在分享一个数组的代码
【C语言和C++Builder学习笔记】 C语言和C++是两种广泛使用的编程语言,它们在软件开发领域占据着重要地位。C语言以其简洁、高效和底层操作能力著称,而C++则在C的基础上引入了面向对象编程,极大地扩展了其应用范围...
C++ Standard Template Library(STL)是C++编程语言的一个重要组件,它提供了一系列通用的数据结构和算法模板,使程序员能够以一种标准化和高效的方式处理数据。STL的主要组成部分包括容器(containers)、迭代器...
以下是一些C++基础学习的关键知识点: 1. **基本数据类型**:C++中的基本数据类型包括整型(int、short、long、long long)、浮点型(float、double)、字符型(char)以及布尔型(bool)。理解每种类型的数据范围...
【C++学习笔记概述】 C++是一门强大的编程语言,其在C语言的基础上进行了扩展,引入了许多现代化的特性。这份笔记主要涵盖了C++的基础知识,包括C++11和C++17的新特性,旨在帮助初学者理解C++的核心概念。 ### C++...
C++是一种强大的面向对象编程语言,它源自C语言并扩展了其...学习这些概念是成为C++程序员的第一步。在实际编程中,还需要理解类、对象、继承、多态等面向对象编程的概念,以及函数、模板、文件操作等更高级的主题。
- **C++与标准规范**:学习的C++版本应该遵循ANSI规范,这样编写的代码具有更好的可移植性,可以在不同的操作系统和硬件平台上运行而无需进行大量修改。 ### 编译与连接过程 - **开发周期**:源程序经过一系列步骤...
《C++ Primer 学习笔记》是一份针对C++初学者的重要参考资料,它基于C++ Primer第三版的内容,旨在帮助读者深入理解C++这门强大的编程语言。C++ Primer是学习C++的经典书籍,以其全面、深入且易于理解的讲解闻名,这...
这篇学习笔记将深入探讨STL的核心概念、主要组件以及其在实际编程中的应用。 首先,STL的核心概念是容器、迭代器、算法和函数对象。容器是STL提供的一系列数据结构,如vector(动态数组)、list(双向链表)、set...
《达内学生C++学习笔记》是一份专为初学者设计的C++教程,旨在提供清晰易懂、逐步深入的学习路径。这份笔记涵盖了C++语言的基础到进阶内容,是学习C++的理想辅助资料。 首先,C++是一种静态类型的、编译式的、通用...
C++是一门强大的编程语言,其包含了...以上就是C++ Primer学习笔记中涵盖的一些主要知识点。通过这些知识点的学习,可以帮助我们深入理解C++语言的核心概念和编程范式,从而编写出更加高效、安全和可维护的C++代码。
### 指针和数组学习笔记 #### 一、引言 在计算机编程语言中,指针和数组是非常重要的概念,它们...通过本篇学习笔记,希望读者能够更加深刻地理解指针和数组的本质以及它们之间的关系,从而在实际开发中更加得心应手。
这个“C & C++学习笔记集合”显然是一份综合性的资源,旨在帮助学习者深入理解和掌握这两种语言。 C 语言是基础,它的语法简洁明了,对内存管理有直接的控制,是理解计算机底层工作原理的良好起点。C 语言的核心...
【C++语言基础】 C++是一种强类型、面向对象的编程语言,遵循ANSI标准,具有高度的可移植性。...随着学习的深入,还将涉及到类、对象、模板、异常处理、内存管理等更复杂的概念,这些都是C++强大功能的核心。
本篇学习笔记主要涵盖了前三章的内容,重点关注STL(Standard Template Library,标准模板库)中的容器、特别是vector的使用,以及迭代器的概念。接下来我们将详细探讨这些知识点。 首先,STL是一个强大的工具集,...
4. **结构体与联合**:结构体允许将不同类型的数据组合在一起,而联合允许在相同的内存区域中存储不同类型的变量,它们是C++中复合数据类型的一部分。 5. **面向对象编程**:C++的核心特性之一是面向对象编程(OOP...
在C++编程语言中,头文件的使用是一个重要的概念。在C++11及更新的版本中,标准库的头文件不再以`.h`结尾,例如`#include<iostream>`代替了传统的`#include...了解并熟练掌握这些基础知识对于学习C++编程至关重要。