C语言
C语言基础
ygtrece_13
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
static
static定义变量时,无论是全局还是局部,都将其存放在静态数据区。若静态变量未被初始化,则自动初始化为0,但只可初始化一次。 当static修饰全局变量时,静态全局变量生存期为整个程序。但其的可见性仅在它所定义的变量所在的源文件内有效,而在同一源程序的其他源文件内无法使用。 当static修饰局部变量时,其可见性仅在一堆{}内有效。但其生存期却变为整个程序。 ...原创 2019-12-05 09:28:44 · 842 阅读 · 0 评论 -
猜名次,猜凶手,杨辉三角
5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果: A选手说:B第二,我第三; B选手说:我第二,E第四; C选手说:我第一,D第二; D选手说:C最后,我第三; E选手说:我第四,A第一; 比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。 void GuessRank()//核心思路是穷举所有情况,每位选手可能的名次都是1 ~ 5 { int a, b, c, d, e; f...原创 2020-03-16 15:42:07 · 181 阅读 · 0 评论 -
库函数的模拟实现(strcmp,strstr,memcpy,memmove)
模拟实现strcmp: int Strcmp(const char* str1, const char* str2) { assert((str1 != NULL && str2 != NULL)); while (*str1 != '\0'&& *str2 != '\0') { if (*str1 > *str2) { return 1;...原创 2020-03-16 14:45:31 · 169 阅读 · 0 评论 -
指针笔试题
笔试题1 int main() { int a[5] = { 1,2,3,4,5 }; int* ptr = (int*)(&a + 1);//&a得到的是int(*)[5],ptr指向的是5后面的一个元素 printf("%d,%d", *(a + 1), *(ptr - 1));//此时ptr已经被强转成int*了,打印2,5 return 0; } 笔试题2 str...原创 2020-03-12 15:31:43 · 422 阅读 · 0 评论 -
关于 sizeof 和 strlen 的各种情况
#include<stdio.h> #include<string.h> #include<stdlib.h> int main() { int a[] = { 1,2,3,4 }; printf("%d\n", sizeof(a));//16 printf("%d\n", sizeof(a + 0));//4,a已经隐式转换为指针int* print...原创 2020-03-11 15:22:22 · 241 阅读 · 0 评论 -
初识C语言
extern为声明外部符号。 enum是枚举关键字,括号中的枚举常量可赋初值。 \0是字符串的结束标志,不算作字符串的长度。\0的ASCII为0。 若要打印字符数组,末尾需要加\0。 \ddd与\xdd表示1~3个8进制和2个16进制数字,打印出来则转换为其十进制所对应的ASCII码。 %操作符的两边操作数需为整数。 移位操作符<< >> 移的是二进制位。 位操作符也是二...原创 2019-12-09 10:51:13 · 244 阅读 · 0 评论
分享