乐趣区

c-重要知识点大一下暑假总结

1. 字符串

头文件<string>
字符串是声明: string a="abcd";

2. 三目运算符:

state1?a : b
state1 是真的吗?是的话执行 a,不是执行 b。
例如 (a>b? a : b)=10;

3.do while 语句与 while 语句区别:

do while 先进行一次循环中再判断,while 先判断再进入循环

4.[指针]x[常量]

  • 指针常量 int * const p; 指针 p 的指向不可以修改,但指向的值可以修改;(记法:const 挨着 p,p 不可改)
  • 常量指针 const int * p; 指针 p 的指向可以修改,但指向的值不可以修改。(记法:const 挨着 ,则取 操作不可改)
    双 const const int * const p;指针的指向和指向的值都不可以修改。

5. 两种传递

  • 值传递:函数中 例如 void function(int a) 将参数直接作为形参传入

优点 :简单直接 不会修改 main 函数中变量的值
缺点:占用大量内存,可能造成内存浪费

  • 地址传递:函数中 例如void function(int *a) 将参数的地址作为形参传入

优点 :极大程度的节省内存(所有指针类型数据均只占据 4 个字节的内存)
缺点:有可能导致 main 函数中的参数被错误修改。为了防止上述情况发生 可修改为void function(const int *a)

退出移动版