-
2020-05-14 20:22:14
首先,C++里关于下划线的问题是源于C语言,因为C++允许用extern “C”来修饰代码以C语言语法方式编译。然后说C语言里的下划线:C语言确实允许以下划线开头的函数存在,实际上你用一个下划线开头的函数名或者变量是没问题的,但有可能会发生命名冲突。凡是以两个或一个下划线开始,后面紧跟着一个大写字母的标识符,不管它出现在哪里,都是保留给编译程序或标准库函数使用的。此外,凡是以一个下划线开始,后面不管跟着什么内容的标识符,如果它出现在文件范围内(即它不是出现在一个函数内),那么它也是被保留的。如果你用一个保留的标识符来作一个变量的名称,结果是没有定义的(程序可能无法编译,或者可以编译但会崩溃)。即使你能非常幸运地找到一个目前还没有被你的编译程序或函数库使用的标识符,你也应该记住这样的标识符是保留起来供将来使用的。因此,最好还是避免使用以下划线开始的变量名或函数名。举例说明:VC里getch函数不是一个标准库函数,因此,它的名字是_getch,大多数编译器都把非标准库、但又是编译器自己提供的库函数以下划线开头。另外,也有编译器的main函数在编译完成以后,名字是_main,如果你自己写了一个函数叫_main,那么编译器可能不知道最终该链接哪个。所以,你可以理解为:编译器需要预留一些名字,为了方便起见,大多数编译器预留的名字都是以下划线开头的,久而久之就形成了标准。虽然下划线开头也可以用,但不推荐使用,因为容易造成名字冲突。
更多相关内容 -
C语言中下划线都有什么用,比如说下面这个struct结构体类型
2017-12-05 00:48:08 -
C语言自学编程(关于Typora软件的使用) —— Day01 笔记
2021-05-20 10:14:18下划线 --- 快捷键 Ctrl+u 下滑线是HTML语法 下划线下划线(快捷键 Ctrl+u ) ==示例:== 文字 高亮(需勾选扩展语法)--- 左右两边各加两个等号 = 这是用来 ==表示高亮== 的文本 ==示例:== 这是用来 ==表示高亮== ...MarkDown基础
标题
#标题名称(井号键的个数代表标题的级数)
一级标题使用1个 # 加空格
二级标题使用2个 # 加空格
三级标题使用3个 # 加空格
四个标题使用4个 # 加空格
五级标题使用5个 # 加空格
六级标题使用6个 # 加空格
#号键最多支持六级标题
文字
删除线 --- 在左右两边各加两个英文下的波浪号 ~
这是 ~~ 删除线 ~~
==示例:==
这就是删除线
斜体 --- 左右两边各加一个星号键 *
这是用来 *斜体* 的 文本
==示例:==
这是用来 斜体 文本
加粗 --- 左右两边各加两个星号键 *
这是用来 **加粗** 的文本
==示例:==
这是用来 加粗 的文本
斜体+加粗 --- 左右两边各加三个星号键*
这是用来 ***斜体加粗*** 的文本
==示例:==
这是用来 斜体+加粗 的文本
下划线 --- 快捷键 Ctrl+u
下滑线是HTML语法
下划线下划线(快捷键 Ctrl+u )
==示例:==
文字
高亮(需勾选扩展语法)--- 左右两边各加两个等号 =
这是用来 ==表示高亮== 的文本
==示例:==
这是用来 ==表示高亮== 的文本
下标(需勾选拓展语法)--- 在下标处左右两边各加一个 英文下的波浪键 ~
水分子式:H~2~O
双氧水分子式:H~2~O~2~
==示例:==
水 分子式:H~2~O
双氧水 分子式:H~2~O~2~
上标(需勾选拓展语法)--- 在上标处左右两边各加一个 英文下的上尖号 ^
面积:m^2^
体积:m^3^
==示例:==
面积:m^2^
体积:m^3^
表情符号 --- 使用英文下的冒号 : 开始 + 英文表情名称
:smile: :laughing: :dizzy_face: :sob: :cold_sweat: :sweat_smile: :cry: :triumph:
使用方法: 输入英文 `:` 英文表情名称
==示例:==
:smile: :laughing: :dizzy_face: :sob: :cold_sweat: :sweat_smile: :cry: :triumph: :100:
表格
使用 | 来分隔不同单元格,使用 - 来分隔表头和其他行
name | price
--- | ---
hahaha | 20
bububu | 22
为了使Markdown更清晰,| 和 - 两侧需要至少有一个空格
==示例:==
name
price
hahaha
20
bububu
22
使用冒号控制对齐方式
引用 --- 使用 > ,也可进行嵌套 >>
>文本文本文本
==示例:==
文本文本文本
嵌套引用
文本文本文本
列表
无序列表 --- 符号(-,+,*) 空格 + 文本
* 可以使用 `*`作为标记 + 空格 + 文本
+ 可以使用 `+`作为标记 + 空格 + 文本
- 可以使用 `-`作为标记 + 空格 + 文本
==示例:==
可以使用 * 作为标记使用
可以使用 - 作为标记使用
可以使用 + 作为标记使用
有序列表 --- 数字 . + 空格 + 文本
1. 文本文本文本
2. 文本文本文本
3. 文本文本文本
==示例:==
有序列表以数字和 .
数字的序列并不会影响生成的列表序列
但仍然推荐按照自然顺序{1,2,3,......} 编写
代码
代码块
使用符号 ``` 进行开头, 选择相应的语言 ,输入代码 以 ``` 进行结尾
==示例:==
print('hello world')
分割线 ---可以在一行内输入三个或更多的 * , - 或 _ 来添加分割线
***
------
___
==示例:==
跳转
外部跳转 --- 超链接
格式:[ 提示名称 ]( 输入网址 ) 符号都是英文状态下的
进入链接:需要按住 Ctrl 键 单击链接进行跳转
[网址](www.baidu.com)
==示例:==
内部跳转 ---本文件内跳转(Typora文件)
格式:[提示名称](#本 文本内相应的标题)
==示例:==
自动连接
使用 <> 包括的URL或邮箱地址会被自动转换成为超链接
<123@email.com>
==示例:==
<123@email.com>
以上就先分享到这里吧!
-
C语言中双下划线__的作用
2020-09-29 14:27:28C语言中双下划线__的作用 以单下划线(_)表明是标准库的变量 双下划线(__) 开头表明是编译器的变量 所以 双下划线__只是C语言的一个合法标识符 不一定是变量, 也可以是函数,宏等。 同时双下划线(__)多用于告...C语言中双下划线__的作用
以单下划线(_)表明是标准库的变量
双下划线(__) 开头表明是编译器的变量
所以 双下划线__只是C语言的一个合法标识符
不一定是变量, 也可以是函数,宏等。同时双下划线(__)多用于告警提示:
FILE 包含当前程序文件名的字符串
LINE 表示当前行号的整数
DATE 包含当前日期的字符串
STDC 如果编译器遵循ANSI C标准,它就是个非零值
TIME 包含当前时间的字符串代码示例如下:
#include <stdio.h> int main() { printf("file name is %s\n", __FILE__); //文件名 printf("line is %d\n", __LINE__); //行号 printf("date is %s\n", __DATE__); //日期 printf("time is %d\n", __TIME__); //时间 return 0; }
输出:
file name is c:\users\qin\desktop\project_c\setjmp\setjmp\__双下划线.cpp line is 11 date is Sep 29 2020 time is 8250732
-
小练C语言:驼峰命名-->下划线命名
2021-05-26 11:11:58下划线命名法(under_score _case) 3.驼峰 转换 下划线 4. 代码 当变量名或函数名是由一个或多个单词连结在一起时,为了增加程序的可读性,产生了命名规则。 1.驼峰命名法 (CamelCase) 第一个单词以小/大写字母开始...当变量名或函数名是由一个或多个单词连结在一起时,为了增加程序的可读性,产生了命名规则。
1.驼峰命名法 (CamelCase)
第一个单词以小/大写字母开始;从第二个单词开始以后的每个单词的首字母都采用大写字母;例如:myFirstName、OnlineUsers,这样的变量名看上去就像驼峰一样~此起彼伏。
但是有个特殊的情况,如果是专有名词,整个单词都是大写的。如:validHTTPRequest
2.下划线命名法(under_score _case)
简单粗暴,就是利用下滑线来分割单词。如:my_first_name、online_users、valid_http_request。
3.驼峰 转换 下划线
我们可以发现, 驼峰中出现大写字母,有2种可能。
单词的首字母 专有名词的其他字母 也就是说,在驼峰命名法中,遇到大写字母,如果是一个新单词的开始,就变为小写字母的同时,前面加上‘_’;如果是专有名词的其他字母,变为小写字母就可以了。
当大写字母是一个新单词的开始时,如果是普通单词的首字母,那第二个字母一定是小写的;如果是专有名词,那前一个字母一定是小写的。既:
if (是大写字母) { if (前面是小写字母 | 后面是小写字母) { 新单词的开始 } }
4. 代码
#include <stdio.h> #include <stdlib.h> #include <string.h> #define N 50 // 暂定输入字符串 最大字符数量是50个 #define Isupper(a) ((a >= 'A' && a <= 'Z') ? 1 : 0) // 是否大写 #define Islower(a) ((a >= 'a' && a <= 'z') ? 1 : 0) // 是否小写 #define COLOR(a, b) "\033[" #b "m" a "\033[0m" #define RED(a) COLOR(a, 31) #define GREEN(a) COLOR(a, 32) int main() { printf("Please input the string:\n"); char src[N] = {0}; scanf("%s", src); char *dest = (char *)calloc(strlen(src) * 2, sizeof(char)); int p = 0, q = 0; while (src[p]) { if (Isupper(src[p])) { if (p && (Islower(src[p-1]) || Islower(src[p+1]))) { dest[q++] = '_'; } dest[q++] = src[p++] - 'A' + 'a'; }else { dest[q++] = src[p++]; } } printf(RED("驼峰 :%s\n"), src); printf(GREEN("下划线:%s\n"), dest); free(dest); return 0; }
-
编程中的下划线是什么意思?
2021-05-22 17:44:49下划线在C没有特殊含义。一般在命名变量和方程用作断字符:integerarray,这样命名变量会很难看,一般会:integerArray 或者integer_array这样命名。一些程序包会经常看到:__Macro_A__ab。这类的变量命名原因是为了... -
关于下划线,你应该了解的几个特殊用途
2021-05-18 12:12:26下划线和中划线,虽然模样长的都差不多,但程序员对她们的喜爱程度却是相差十万八千里。下划线在程序员眼里,是一个魔法师,而中划线只是一个普通字符而已。一、MySQL数据库在SQL语句中,like关键字会把下划线解释为... -
c语言中变量/函数命名以单下划线(_)和双下划线(__) 开头的意义
2021-05-18 12:04:11.NET跨平台之旅:在Linux上以本地机器码(native)运行ASP.NET Core站点在将“.NET跨平台之旅”示例站点 about.cnblogs.com 从ASP.NET 5 RC1 升级至 ASP.NET Core 1.0 (博文... -
牛逼大神整理的C语言基础知识,你确定你不码下来?
2021-05-20 16:26:40【【怪兽爱C语言】牛逼大神整理的C语言基础知识,你确定你不码下来?】https://toutiao.com/group/6577344220355363341/?iid=15906422033&app=explore_article×tamp=1531501720&tt_from=copy_link&... -
c语言命名规则1-关于下划线
2021-11-23 16:11:13关于c语言的命名规则的下划线,有以下两种说法: 1、作为内部接口函数或关键字用 C语言中在函数名或关键字前加下划线 一般情况是标识该函数或关键字是自己内部使用的,与提供给外部的接口函数或关键字加以区分。... -
c代码-终端控制台输出文字带颜色、加粗、下划线
2021-07-14 22:41:04c代码-终端控制台输出文字带颜色、加粗、下划线 -
c语言中命名以单下划线(_)和双下划线(__) 开头的意思
2019-10-06 16:55:18以单下划线(_)表明是标准库的变量 双下划线(__) 开头表明是编译器的变量 -
C语言中在函数名或关键字前加下划线
2020-01-16 15:58:27C语言中在函数名或关键字前加下划线 一般情况是标识该函数或关键字是自己内部使用的,与提供给外部的接口函数或关键字加以区分。 这只是一种约定,实际你非要把这些函数或关键字提供给外部使用,语法上也没有限制。 ... -
C语言总结
2021-05-19 13:34:57C语言总结1.C语言程序的基本结构1.1添加stdio.h的引用1.2添加一个main函数1.3main函数的形式应该是voidmain(){}2.C语言程序的编译运行过程2.1编写源代码(CPU是不能直接执行C语言的)2.2编译:将C语言的源代码翻译为... -
变量名/函数名 在不同语言(python,c语言)中与下划线的关系
2022-04-02 10:19:141. python : (1)# 以数字、字母开头: 正常的公有变量名:以此类名称命名的对象,为公有对象,任何人都可以使用和导入 (2)# 以单下划线开头: 半私有的变量名:如果...2. C语言: (1)可自定义以下划线开头的 -
好玩!C语言打印彩色字符,还能闪烁!
2020-04-10 15:31:49其它一些屏幕控制ASCII字符: 字符 动作 0 关闭所有属性 1 设置高亮度 4 下划线 5 闪烁 7 反显 8 消隐 最后还有一些控制终端光标的字符: 字符 动作 nA 光标上移n行 nB 光标下移n行 nC 光标右移n行 nD 光标左移n行 y... -
C语言编程注意事项.docx
2019-09-08 18:06:0512. 变量名以字母和数字组成, (下划线"_"被默认为字符, 以下划线为首写字母的为库类变量名), 变量常以小写字母开头,内部变量名前31位有效, 外部变量名至少前6位保持唯一性。 13.在C语言中是区分字母大小写的。 14... -
【C语言】一个比较基础的问题啦 要求输入一串字符,只能是数字或字母或下划线,且首字符必须是字母
2021-05-23 03:19:50单纯判断字母还是数字,C语言有内部函数可以直接用,比如头文件ctype.h下的函数。但你既然是基础问题,就自己写函数实现判断,对应字符ascii码判断。#includeint main(){int regcmp(char *str);char str[100];while... -
为什么C语言中的标识符只能由字母、数字和下划线3中字符组成?
2021-05-18 14:50:35合法标识符是以字母下划线打头,不能有如char main类的标识符。一. 基本概念C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要... -
【C语言】输出带颜色的打印
2021-08-05 23:46:57动作 0 关闭所有属性 1 设置高亮度 4 下划线 5 闪烁 7 反显 8 消隐 还有一些控制终端光标的字符: 字符 动作 nA 光标上移n行 nB 光标下移n行 nC 光标右移n行 nD 光标左移n行 y; xH 设置光标位置 2J 清屏 K 清除从... -
C语言里面命名只能数字字母下划线,你千万别弄个-出来,a-b
2020-04-18 09:47:16好像文件命名也是只能数字字母下划线,别用什么横杠。 -
对数组进行 冒泡排序法——C语言代码
2020-05-22 16:34:13课程的随堂作业,C语言的,用dev就能运行,萌新代码,勿喷,仅仅帮助不想写作业的朋友方便一下,反正老师也不会仔细检查的 -
C语言基础:C语言宏定义(2) - 带参数的宏定义
2021-05-22 07:56:04上一节课, 我们讲解了不带参数的宏定义, 这节课我们就来讲讲带参数的宏定义又是怎么定义, 使用和注意事项~~下面我们来看一个例子:#include #define kSum(a, b) a+bint main(){int a = 10;int b = 20;... -
用C语言打印一个菱形图案!
2018-10-12 16:31:36为了避免多次循环,采用多个函数来实现, 为了统一规范,函数定义开头大写,而对于变量名我们用下划线命名,也方便我们后期读取前期写的代码很容易区分函数和变量名 运行结果 #include #include void Print... -
【判断题】C语言中的标识符只能由字母、数字和下划线三种字符组成,而且第一个字符只能是字母和下划线。
2021-05-18 14:07:25【判断题】C语言中的标识符只能由字母、数字和下划线三种字符组成,而且第一个字符只能是字母和下划线。更多相关问题计算机病毒按其寄生方式划分通常可分为()。A.系统引导型病毒B.文件型病毒C.在委托某工程咨询单位... -
c语言中cJson的使用
2021-05-21 07:25:31c语言中cJson的使用JSON简介JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,可以把JSON的结构理解成无须的。可嵌套的key_value键值对集合,这些key_value键值对是以结构体或数组的形式来组织的。同一... -
c语言中abs函数怎么用
2021-05-19 02:27:17请谁知道C语言中abs函数是怎么实现的想知道abs函数是怎么实现的,不会是用if else语句吧1.函数的头文件:#include 2.函数的原型:int abs (int j); 3.函数说明:abs()用来计算参数j 的绝对值,然后将结果返回。 4.... -
C语言代码规范
2018-11-07 17:20:272.局部变量及形参都用小写,单词间可加下划线 3.全局变量使用驼峰命名法,及单词首字母大写,单词间没有下划线 4.宏定义全部大写,单词间可加下划线 5.函数名单词首字母大写,单词间加下换线或全小写,单词间加... -
C语言变量命名规则
2021-09-23 14:36:16在C语言中定义变量时,只可以是字母、数字、和下划线组成。 要注意以下几个命名规则: 变量名的开头必须是字母或下划线,不能是数字。实际编程中最常用的是以字母开头,而以下划线开头的变量名是系统专用的。 变量...