C/C++基础(一)

来源:互联网 发布:数组是什么数据类型 编辑:程序博客网 时间:2024/05/04 02:57

IDE:MicroSoft Visual Studio2013

导包:

//导入标准函数库(类似java的导包)#include<stdio.h>//导入标准函数库(system、sizeof等等)#include<stdlib.h>//windows系统的api#include<Windows.h>

主函数入口 :main()

1. 函数输出

void main(){    printf"hello world");    //暂停 方便查看    system("pause");}

2. 基本数据类型(char int short long float double)

void main(){    /**      %d   - int      %c   - char      %ld  - long      %f   - float      %hd  - 短整型      %lf  - double      %u   - 无符号数      %x   - 十六进制输出 int 或者long int 或者short int      %o   - 八进制输出      %s   - 字符串输出    */    int i = 28;    char c = 'D';    folat f = 13.24;    long l = 3532434;    short s = 34;    double d = 23.53224;    //控制台输出数据 需要使用占位符    //int -> %d    printf("输出int类型的值:%d\n",i);    //char -> %c    printf("输出char类型的值:%d\n",i);    //float ->%f    printf("输出float类型的值:%f\n",f);    //long ->%l    printf("输出long类型的值:%ld\n",l);    //double ->%lf    printf("输出double类型的值:%lf\n",d);    //short -> %x    printf("输出short类型的值:%x\n",s);    system("pause");}

3. 输入输出函数

void main(){    //注意:i    int i = 100;    //输出函数(注意:输入函数赋值需要的是地址,而不是值)    printf("请输入一个整数:");    //输入函数 不同的编译工具,对函数支持不一样    //scanf("%d",&i);    scanf_s("%d",&i);    //打印i的值    printf("赋值之后i的值:%d",i);    system("pause");}

4. 取地址

void main(){    int i = 100;    printf("i的值:%d\n",i);    printf("i的地址:%p\n",&i);    printf("根据地址获取i的值:%d\n",*(&i));    //暂停    getchar();}

5. 指针

void main(){    int i = 88;    //int *i是一个int类型的指针变量,可以存储一个int型    //的变量地址    int *p = &i;    printf("指针变量p的值:%p\n",p);    //输出指针变量的地址    printf"指针变量p的地址:%p\n",&p);    //直接赋值    i = 200;    printf("变量i的值:%d\n",i);    //间接赋值    *p = 400;    printf("指针变量赋值后的i的值:%d\n",i);    getchar();}

6. 通过方法改变变量的值

void change(int *a){    // *是取值    *a = 20printf("形参a变量的地址:%p\n",&a);}void main(){    int i = 50;    printf("修改前的值:%d\n",i);    change(i);    printf("修改前的值:%d\n",i);    getchar();}

7. 为何指针要有类型

void main(){    //定义int类型的变量    int i = 10;    //定义long类型的变量    long l = 20.234422;    //定义int类型的指针变量    int *p = &i;    //%#x占位符 表示16进制的值    //打印i的变量地址    printf("i的变量的地址:%#x\n",&i);    //打印d的变量地址    printf("d的变量的地址:%#x\n",&d);    //打印指针变量p的地址    printf("d的变量的地址:%#x\n",&p);    printf("p指针变量修改前的值:%d\n",*p);    //将long类型的变量的地址赋值给p指针变量    *p = &l;    printf("修改后p指针变量的地址:%#x\n",&p);    printf("p指针变量修改后的值:%d\n",*p);    getchar();   //总结:因为指针存储的是一个内存地址,然而我们只根据个   //地址读取对应的数据,但是不知道什么时候读取完,也就导   //致了丢失,所以我们需要指定指针类型,确定什么时候读取   //完。例如:char 2个字节 16int 4个字节  32位。}
0 0