C语言的常量,字符串,转义字符,注释你都了解吗

 更新时间:2022年02月24日 09:32:42   作者:昼夜_  
这篇文章主要为大家详细介绍了C语言的常量,字符串,转义字符,注释,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

四种常量:

1.字面常量

如数字100,‘a’

2.const修饰的常变量

const int n = 10 //常变量而非常量 不能用 int a【n】={1,2,3}定义数组

3.define定义的标识符常量

#define NUM 100 //NUM是define定义的常量

4.枚举常量:

生活中有些取值可以一一列举的如:

性别:男,女,保密

星期:1,2,3,4,5,6,7

//创建一种枚举类型

#include <stdio.h>
enum Sex
{
    //枚举类型Sex的三个可能取值 -枚举常量
    MALE,   //0
    FEMALE, //1
    SECRET  //2
};
int main()
{
    enum Sex sex = FEMALE;
    //MALE = 2;             //err
    printf("%d\n", MALE);   //0
    printf("%d\n", FEMALE); //1
    printf("%d\n", SECRET); //2
    return 0;
}

字符串:

由双引号括起来的一串字符就是字符串 如:"abc"、"a"、"" //空字符串

注:字符串的结束标志是一个\0的转义字符,在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。

#include <stdio.h>
//突出'\0'的重要性
int main()
{
    char arr1[] = "abcdef";
    char arr2[] = {'a', 'b', 'c','d','e','f'};
    char arr3[] = {'a', 'b', 'c','d','e','f','\0'};
	//%s 是打印字符串
    printf("%s\n", arr1);  //abcdef
    printf("%s\n", arr2);  //abcdef烫abcdef
    printf("%s\n", arr3);  //abcdef
    return 0;
}
#include <stdio.h>
#include <string.h>
//说明'\0'不算作字符串内容
int main()
{
    char arr1[] = "abcdef";
    printf("%d\n", strlen(arr1));  //6
	//strlen - string length - 字符串长度 需要头文件<string.h>
    char arr2[] = {'b','i','t'} ;
    printf("%d\n", strlen(arr2));  //10  缺少\0输出值是随机值
    return 0;
}

转义字符

#include <stdio.h>
int main()
{
    //问题1:在屏幕上打印一个单引号',怎么做?
    //问题2:在屏幕上打印一个字符串,字符串的内容是一个双引号“,怎么做?
    //问题3:在屏幕上打印 c:\code\test.c\n,怎么做?
    printf("%c\n", '\'');         //'
    printf("%s\n", "\"");         //"
    printf("c:\\code\\test.c\n"); //c:\code\test.c\n
    return 0;
}

特殊的转义字符:

\ddd:ddd表示1~3个八进制的数字。 如: \130 X

:\ddd 最多只支持三位数字,并且三位数字也不是任意的,一旦大于等于八进制数 '/400 '(十进制256=8进制400)就超过了ascall码的范围,编译器就会报错。另外大于三位,或者遇到非八进制数字时则转换结束,直接取末尾数字。

面试题:需注意\后的三个数字超出400和三个数字中有超过7的数字的情况

#include <stdio.h>
#include <string.h>
int main()
{
    printf("%d\n", strlen("abcdef"));
    // \62被解析成一个转义字符
    printf("%d\n", strlen("c:\test\628\test.c")); //14
    return 0;
}

\xdd:dd表示2个十六进制数字。 如: \x5F   //

注释

注释有两种风格:

C语言风格的注释 /*xxxxxx*/ 缺陷:不能嵌套注释

C++风格的注释 //xxxxxxxx 可以注释一行也可以注释多行 

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容! 

相关文章

  • exec()函数在C++中的应用及其用法

    exec()函数在C++中的应用及其用法

    exec()函数在C++中是一个进程控制函数,用于创建新进程执行其他程序或命令行指令。exec()函数可以替换当前进程的代码和数据,创建新的进程运行其他程序。exec()函数有多个版本,例如execl、execv、execle、execve等,根据不同的参数类型和个数来使用
    2023-05-05
  • C++中的强制类型转换操作详解

    C++中的强制类型转换操作详解

    C++中提供了四种强制类型转换技术:static_cast、dynamic_cast、reinterpret_cast和const_cast。这些技术能够在需要时将一种类型转换为另一种类型,但需要注意它们的适用条件和安全性。程序员需要根据具体情况选择合适的强制类型转换方式,以确保程序的正确性和可靠性
    2023-04-04
  • C++填坑的重写,重载和隐藏的详解

    C++填坑的重写,重载和隐藏的详解

    这篇文章主要介绍了C++中重载、重写(覆盖)和隐藏的区别,是C++面向对象程序设计非常重要的概念,需要的朋友可以参考下,希望能够给你带来帮助
    2021-09-09
  • C语言中几种常量的认识和理解

    C语言中几种常量的认识和理解

    这篇文章主要为大家介绍了C语言常量的认识和理解,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • C语言实现直角坐标转换为极坐标的方法

    C语言实现直角坐标转换为极坐标的方法

    这篇文章主要介绍了C语言实现直角坐标转换为极坐标的方法,涉及C语言进行三角函数与数值运算相关操作技巧,需要的朋友可以参考下
    2017-09-09
  • C++使用标准库实现事件和委托以及信号和槽机制

    C++使用标准库实现事件和委托以及信号和槽机制

    这篇文章主要为大家详细介绍了C++如何使用标准库实现事件和委托以及信号和槽机制,文中的示例代码讲解详细,具有一定的借鉴价值,需要的可以参考一下
    2022-11-11
  • 详解C++循环创建多级目录及判断目录是否存在的方法

    详解C++循环创建多级目录及判断目录是否存在的方法

    这篇文章主要介绍了C++循环创建多级目录及判断目录是否存在的方法,文中代码有一个针对各种系统进行判断来加载不同头文件的方法,需要的朋友可以参考下
    2016-03-03
  • C++中线程同步与互斥的四种方式介绍及对比详解

    C++中线程同步与互斥的四种方式介绍及对比详解

    在C++中,当两个或更多的线程需要访问共享数据时,就会出现线程安全问题,这是因为,如果没有适当的同步机制,一个线程可能在另一个线程还没有完成对数据的修改就开始访问数据,这将导致数据的不一致性和程序的不可预测性,本文介绍了C++中线程同步与互斥的四种方式介绍及对比
    2025-01-01
  • C语言实现大整数加减运算详解

    C语言实现大整数加减运算详解

    大数运算,顾名思义,就是很大的数值的数进行一系列的运算。本文通过实例演示如何进行C语言中的大整数加减运算,有需要的可以参考借鉴。
    2016-08-08
  • C++超详细分析讲解内联函数

    C++超详细分析讲解内联函数

    为了消除函数调用的时空开销,C++ 提供一种提高效率的方法,即在编译时将函数调用处用函数体替换,类似于C语言中的宏展开。这种在函数调用处直接嵌入函数体的函数称为内联函数(Inline Function),又称内嵌函数或者内置函数
    2022-06-06

最新评论