doubleyong
管理员
管理员
  • 最后登录2022-01-18
  • 发帖数1052
  • 最爱沙发
  • 喜欢达人
  • 原创写手
  • 社区居民
  • 忠实会员
阅读:140回复:0

c语言语法总结

楼主#
更多 发布于:2021-12-29 11:14
语法:
每条语句后一定要加分号(;) ,不能省略


printf(): 输出
格式符:
%d: 十进制
(%-4d:  " - " :  输出的内容左侧为有效数据,右侧为补足字符
4: 输出占4列宽度,不足用空格补齐,超出按实际长度输出
d:   按照10进制整型输出
%f: 浮点数
(%.2f :  其中的.2, 表示保留2位小数点)
%lf:双精度
%s:字符串; 字符串必须使用双引号,不能用单引号



scanf: 输入
调用函数,需要先定义
数组:
可以直接定义二维数组,如:a[4][4]
不能直接输出数组 ,需要遍历输出
没有数组的长度length属性,要获取数组长度需要自己计算 ( sizeof(a) / sizeof(a[0]) )
数组赋值是花括号 {} , 不是中括号
定义数组时,直接给初始值,不给长度,会报警告;
如下:int arr = {2,45,67,77,89,110};
需要在定义时给数组加上大小
int arr[6] = {2,45,67,77,89,110};
数组下标,超过超出数组长度时,不会报错,但是,会输出不知道的值;
数组使用中,只知道数据的总长度,不知道数据,已有数据的长度大小,常用一个变量来保存数组中,已有数据的长度




动态分配空间
malloc()
C 库函数 void *malloc(size_t size) 分配所需的内存空间,并返回一个指向它的指针
size -- 内存块的大小,以字节为单位。


例如:
float *addScore = (float*)malloc((num+addNum)*sizeof(float));




typeof  与 #define
C 语言提供了 typedef 关键字,您可以使用它来为类型取一个新的名字
#define 是 C 指令,用于为各种数据类型定义别名,与 typedef 类似,但是它们有以下几点不同:
  • typedef 仅限于为类型定义符号名称,#define 不仅可以为类型定义别名,也能为数值定义别名,比如您可以定义 1 为 ONE。
  • typedef 是由编译器执行解释的,#define 语句是由预编译器进行处理的。





指针
&地址   (取地址运算符)
*值        (间接运算符,取消引用运算符)


指针的声明
变量类型   *变量名;
变量类型*   变量名;


int number = 5;
int *p1 = &number;
printf("%d",p1);  // p1: 输出的是地址, *p1 : 输出的是5;




#define :可以用于定义宏


结构体语法:
为了定义结构,您必须使用 struct 语句。struct 语句定义了一个包含多个成员的新的数据类型,struct 语句的格式如下:
struct tag { member-list member-list member-list ... } variable-list ;
tag 是结构体标签。
member-list 是标准的变量定义,比如 int i; 或者 float f,或者其他有效的变量定义。
variable-list 结构变量,定义在结构的末尾,最后一个分号之前,您可以指定一个或多个结构变量。


gets()
gets() 函数的功能是从输入缓冲区中读取一个字符串存针储到字符指变量 str 所指向的内存空间。
示例:
  1. char str[20] = "\0"; //字符数组初始化\0
  2. printf("请输入字符串:");
  3. gets(str);
  4. printf("%s\n", str);

回文字符串:是一个正读和反读都一样的字符串。


strlen
strlen() 函数从字符串的开头位置依次向后计数,直到遇见\0,然后返回计时器的值。最终统计的字符串长度不包括\0


  1. char str[100] = { 0 };
  2. size_t len;
  3. gets(str);
  4. len = strlen(str);



strcmp
C 库函数 int strcmp(const char *str1, const char *str2)str1 所指向的字符串和 str2 所指向的字符串进行比较
返回值
该函数返回值如下:
  • 如果返回值小于 0,则表示 str1 小于 str2。
  • 如果返回值大于 0,则表示 str1 大于 str2。
  • 如果返回值等于 0,则表示 str1 等于 str2。
知识需要管理,知识需要分享
游客


返回顶部

公众号

公众号