IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C语言01 -> 正文阅读

[C++知识库]C语言01

宏定义,函数,格式化显示两位小数

#include <stdio.h>
#include <stdlib.h>

//宏定义 将PI替换成3.14
//其实enum和define同样不能取地址,也不会产生非必要的内存分配
#define PI 3.14

double circleArea(double radius)
{
    return PI * radius * radius;
}

int main()
{
    printf("hello world\n");

    //值得一说的是,double和float相比无论是精度还是执行效率都要高哦
    double radius = 0.0;
    double res = 0.0;

    //\n \转移符 \n换行符
    //linux下换行符为\n,windows下换行符为\r\n,不过实际只需要\n就行,并不要人为考虑
    printf("enter radius:\n");

    //从键盘输入,lf为double的占位符
    //输入时需要知道输入到哪里,输入的是什么,也就需要占位符和地址。
    scanf("%lf",&radius);

    //函数调用
    res = circleArea(radius);

    //.2 保留两位小数
    printf("circle area: %.2lf\n",res);

    return 0;
}

无符号类型

#include <stdio.h>

int main(int argc,char **argv)
{
    //输出 1
    printf("sizeof(char) = %ld\n",sizeof(char));

    // char ch 二进制为 0000 0000
    //最高位0表示正数,1表示负数
    //取值范围为:1111 1111 —— 0111 1111

    return 0;
}

?寄存器变量register,别名typedef,防止优化volatile,进制

#include <stdio.h>

int main(int argc,char** argv)
{
    //声明一个寄存器变量,可以增加运行效率
    //不能对寄存器变量区地址
    //当一个变量频繁使用时IDE会自动优化为register
    register int num = 10;
    //%p 地址的占位符
    //printf("&num = %p\n",&num);

    //定义别名
    //便于代码的移植
    typedef char* STRING;
    STRING str = "xiaoming";
    //%s 字符串的占位符
    printf("%s\n",str);

    //声明一个防止IDE优化的变量
    volatile int num2 = 10;
    //对于IDE优化到寄存器的变量,可以强制取其地址
    printf("%d\n",num2);

    //变量实际上其实就是内容
    int num3 = 10;
    printf("对于整形变量num3,内容就是数字:%d\n",num3);
    int* p = &num3;
    printf("对于指针变量p,内容就是地址:%p\n",p);

    int num4 = 10;
    printf("十进制输出num4:%d\n",num4);
    printf("八进制输出num4:%o\n",num4);
    printf("十六进制输出num4:%x\n",num4);
    //%#加禁止占位符号可以使进制带前缀输出
    printf("十进制输出num4:%d\n",num4);
    printf("八进制输出num4:%#o\n",num4);
    printf("十六进制输出num4:%#x\n",num4);

    //十进制10
    int num5 = 10;
    //八进制10
    int num6 = 012;
    //十六进制10
    int num7 = 0xa;
    printf("num5 = %d,num6 = %d,num7 = %d\n",num5,num6,num7);

    return 0;
}

内置类型输出

#include <stdio.h>

int main()
{
	//整型输出
	short s = 1;
	unsigned short us = 1;
	printf("短整型s:%hd\n", s);
	printf("无符号短整型us:%hu\n", us);

	int i = 2;
	unsigned int ui = 2;
	printf("整型i:%d\n", i);
	printf("无符号整型ui:%u\n", ui);

	long l = 3;
	unsigned ul = 3;
	printf("长整型l:%ld\n", l);
	printf("无符号长整型ul:%lu\n", ul);

	//实型(浮点型)输出	
	
	//浮点型存储方式和整型不同(一部分存储整型,一部分存储浮点型)没有无符号,编译不通过
	/*unsigned float f = 11.11f;
	unsigned double d = 11.11;*/

	//float f = 11.11;	实际上这样写是向下类型转换可能会造成数据截断
	float f = 11.11f;
	printf("单精度浮点数f:%f\n", f);

	//其实除空间外,double无论执行效率还是精度都高于float
	double d = 22.22;
	printf("双精度浮点数d:%lf\n", d);

	//字符型
	char c = 'a';
	unsigned char uc = 'a';
	unsigned char uc2 = 128;
	unsigned char uc3 = 97;
	printf("字符型c:%c\n", c);
	printf("无符号字符型uc:%c\n", uc);
	//ascii码上只有0-127,超出范围没有对应,输出乱码
	printf("无符号字符型uc2:%c\n", uc2);
	//可以用u来占位
	printf("无符号字符型uc2:%u\n", uc2);
	//a的ASCII码对应97 A对应65
	printf("无符号字符型uc3:%c\n", uc3);

	return 0;
}

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-09-02 11:09:57  更:2021-09-02 11:12:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 20:42:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计