摘要:
int main() { constexpr size_t rowCnt = 3, colCnt = 4; int ia[rowCnt][colCnt]; // 使用 for 循环遍历初始赋值 for (size_t i = 0; i != rowCnt; ++i) { for (size_t j 阅读全文
posted @ 2024-09-21 17:01
double64
阅读(26)
评论(0)
推荐(0)
摘要:
▲《C++ Primer》 P109 我们无法保证 c_str 函数返回的数组一直有效,事实上,如果后续的操作改变了 string 的值就可能让之前返回的数组失去效用。 WARNING: 如果执行完 c_str() 函数后程序想一直都能使用其返回的数组,最好将该数组重新拷贝一份。 阅读全文
posted @ 2024-09-21 15:51
double64
阅读(6)
评论(0)
推荐(0)
摘要:
▲ 《C++ Primer》 P96 指针也都支持上面的操作。 两个指针相减的结果的类型是一种名为 ptrdiff_t的标准库类型,和 size_t 一样,ptrdiff_t 也是一种定义在 cstddef 头文件中的机器相关的类型。因为差值可能为负值,所以 ptrdiff_t 是一种带符号类型。( 阅读全文
posted @ 2024-09-21 14:48
double64
阅读(51)
评论(0)
推荐(0)
摘要:
当使用数组作为一个 auto(参见 2.5.2节,第61页)变量的初始值时,推断得到的类型是指针而非数组: int ia[]= {0,1,2,3,4,5,6,7,8,9}; // ia是一个含有10 个整数的数组 auto ia2(ia); // ia2 是一个整型指针,指向 ia 的第一个元素 i 阅读全文
posted @ 2024-09-21 14:42
double64
阅读(15)
评论(0)
推荐(0)
摘要:
显式初始化数组元素 如果指明了维度,那么初始值的总数量不应该超出指定的大小。如果维度比提供的初始值数量大,则用提供的初始值初始化靠前的元素,剩下的元素被初始化成默认值(参见 3.3.1节,第 88 页): const unsigned s=3; int ial[sz]={0,1,2}; //含有3个 阅读全文
posted @ 2024-09-21 13:36
double64
阅读(85)
评论(0)
推荐(0)