C ,语法
文章平均质量分 55
Hormous的一天
这个作者很懒,什么都没留下…
展开
-
静态变量的简单 和 strtok 的使用实现 标识符的作用域
静态变量的简单操作。。#include #include using namespace std;char * Strtok(char *p,char *sep){ static char * start; // 本次查找子串的起点。 if (p) start = p; for (; *start && strchr(sep,*start); ++原创 2017-11-21 14:59:12 · 255 阅读 · 0 评论 -
位运算的认识
位运算的例子#includeint main(int argc,char const *argv[]){ int number; scanf("%d",&number); unsigned mask = 1u<<31; for (;mask ; mask >>= 1){ printf("%d",number & mask?1:0);原创 2017-11-06 14:52:41 · 255 阅读 · 0 评论 -
关于指针的一些想法
1.取地址和int在不同的计算机位数中效果是不同的。所以要引入指针的概念。//来进行指针的简单推导#includeint main(){ int i = 10; int *p = &i; //在用指针赋值完后用%d时 *p = i ,用%p时&i = p ,用%d是&i = p; printf("%d\n",*p); printf("%d\n",i原创 2017-10-23 17:35:18 · 176 阅读 · 0 评论 -
结构体
结构体的声明有三种:——————————————————————————————————————————————————————————————————结构体的初始化:第一种 老老实实地说明了每个值第二种 特定地给一些变量赋值———————————————————————————————————————————————————————————————原创 2017-10-28 09:46:24 · 264 阅读 · 0 评论 -
结构体与函数
不成熟的输入,直接传入的只是y的值。并没有把y给传入,函数中的数值与原本的结构没有任何关系。结果但是这样也非常浪费空间和时间。最好的方式就是传指针。但首先得解决的问题是结构传指针过于复杂,所以先化简。p所指的month -> ==== p所指向那个结构的month我们来看看最终的进化版原创 2017-10-31 14:53:55 · 491 阅读 · 0 评论 -
结构经典例题,typedef的指针优化
/*Description现有有N个学生的数据记录,每个记录包括学号、姓名、三科成绩。编写一个函数input,用来输入一个学生的数据记录。编写一个函数print,打印一个学生的数据记录。在主函数调用这两个函数,读取N条记录输入,再按要求输出。 N<100Input学生数量N占一行 每个学生的学号、姓名、三科成绩占一行,空格分开。Output每个学生的学号、姓名、三科成绩占一行,逗号原创 2017-11-01 09:41:40 · 637 阅读 · 0 评论 -
枚举的初识
1. 枚举类型定义的一般形式为:enum 枚举名{ 枚举值表 };在枚举值表中应罗列出所有可用值。这些值也称为枚举元素。例如:该枚举名为weekday,枚举值共有7个,即一周中的七天。凡被说明为weekday类型变量的取值只能是七天中的某一天。2. 枚举变量的说明如同结构体(struct)和共用体(union)一样,枚举变量也可用不同的方式说明,即先定义后说明,同时定义原创 2017-11-03 19:11:04 · 311 阅读 · 0 评论 -
typedef的使用
typedef struct date{ int x; int y; int z;}th;//typedef这个修饰符是指你定义了一个变量名,而没有声明变量th three[50005];这个代码等于struct date{ int x; int y; int z;}three[50005];结构数组原创 2017-11-03 19:52:35 · 151 阅读 · 0 评论 -
二阶指针的运用,字符串的交换
牛逼的字符串交换#include<stdio.h>void exchange(char **p1,char **p2){ int *temp; temp = *p1; *p1 = *p2; *p2 = temp;}int main(){ char a[10]; char b[10]; gets(a); get...原创 2017-11-05 09:57:19 · 1219 阅读 · 0 评论 -
联合体的使用
看起来与结构体非常的像,但是它的只能使用其中一个数据。联合体中的数据都储存在同一个地方,用不同的变量名去访问他得到的数据也不一样。这是最常用的形式。里面的数据可以看成是 I 也可以看成一个char 的数组。但不同的是里面的数据是16进制倒着排序的具体的例子在下面本来输入的是4,以为在内存中储存的形式是。。。。但是实际上储存的是原创 2017-11-05 11:10:12 · 302 阅读 · 0 评论 -
宏的含参定义,和宏的高级使用
宏的含参代换一定要考虑运算的顺序。宏的注意事项,最好不要加上分号;原创 2017-11-05 14:24:23 · 219 阅读 · 0 评论 -
一些字符串与指针的小问题
scanf的后面如果要加gets,就得先输入 fflush(stdin);清理一下缓存区,因为前面的scanf 会保存回车符号。这会直接跳过gets语句。或者可以用scanf("%d%*c”,)来跳过字符串与数组的区别很大的。数组的最后一位就不会有'\0'先就这样到时候在补充。字符串用*来定义是无法打印其单个的值,也无法来处理单个值的赋值。把字符串放在了一个只能读不能写的地方。如果两个字符串都用*原创 2017-10-22 09:37:37 · 233 阅读 · 0 评论 -
字符串的常规操作
字符串的筛选选出数字 #include<stdio.h> int main() { char a[80]; int i = 0; gets(a); while(a[i] != '\0') { if('0'<=a[i]&&a[i]<='9') ...原创 2017-12-27 09:27:54 · 369 阅读 · 0 评论