C语言学习系列(一)开门首篇
一、特辑
- 此次是我自己的学习之路,和大家一起分享(我现在是做Java),途中遇到什么问题大家也可以提出来一起讨论一起进步;
- 主要参考教程是菜鸟教程上面的C语言教程,以及大学课本C语言教程-第四版(谭浩强);
- 对于每个环节的代码例题,都会做详细的讲解,在每篇的结尾都会附带代码源码;
- 由于工作原因,不能做到每天都更新,但至少保证每周一篇。
二、环境配置
- C语言标准C11(也被称为C1X)指ISO标准ISO/IEC 9899:2011,是当前最新的C语言标准。
- 主要介绍在Windows 10系统下的开发,软件MinGW、NotePad++。
- MinGW下载地址:https://sourceforge.net/projects/mingw/?source=typ_redirect
- NotePad++:https://notepad-plus-plus.org/download/v7.5.html
- 然后是安装配置环境变量,这些都是按照步骤来就行,配过Java环境变量其他的都类似。
- 新建好一个test1.c的C语言文件,点击运行=》运行;
#include <stdio.h> int main()
{
/* 我的第一个 C 程序 */
printf("Hello, World! \n"); return ;
}- 输入: cmd /k gcc -o "$(CURRENT_DIRECTORY)\$(NAME_PART).exe" "$(FULL_CURRENT_PATH)" && CLS && "$(CURRENT_DIRECTORY)\$(NAME_PART).exe" & PAUSE & EXIT

- 保存… :运行C,然后点击运行

主要是NotePad++的集成配置:
三、编码小插曲
- 后面我在写第二个demo时,出现了控制台中文乱码的情况,苦思片刻,google好久都没有解决根本问题;
- google上面答案都是让通过 chcp 65001 命令修改控制台编码格式为UTF-8,不过治标不治本,这些只是在当前页起作用,而我们运行C程序则会开启一个新的窗口,显然不适用;
- 于是就开始修改注册表内容,从根本上解决问题;
- 在NotePad++上编码都是使用的65001(UTF-8),而控制台默认是936(GBK),所以会出现中文乱码情况;
- 打开cmd——>regedit
- 找到 HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe 选项,修改CodePage默认值为十进制65001,关闭注册表,重新编译运行C程序,中文显示正常,Over。
if ( U.read(me.Blog) ) $("#推荐").click();
if ( U.copy(me.Blog) ) $("#u Blog").console("原文链接:http://www.cnblogs.com/Grand-Jon/p/7403649.html ");
else me.Fuck(U);
C语言学习系列(一)开门首篇的更多相关文章
- C语言学习系列笔记
1.小甲鱼 C语言教程系列
- Go语言学习笔记一(语法篇)
国庆节七天假期,这段时间刚好项目那边催的不是很紧,基本上每天都是白天重构一下项目代码,晚上自己学习.(大概是因为容总那边的人都去度假了把项目进度放慢了吧.这两天“彩虹”姐姐也来凑热闹,据说还是直接从澳 ...
- JavaScript学习系列之内存模型篇
一个热爱技术的菜鸟...用点滴的积累铸就明日的达人 正文 如果真的想学好一门语言,那么一定要了解它内存模型,本篇文章就带你走进JavaScript的内存模型,由于本人才疏学浅,若有什么表述有误的地方, ...
- 五语言学习系列 C,C++,Objective-C,Java,C# (一)历史
C:由AT&T贝尔实验室的Dennis Ritchie于1972年创建的,是专为开发者设计的语言. C++:在C基础上,1983年又由贝尔实验室的Bjarne Strou-strup推出了C+ ...
- C语言学习系列(六)基本语法
一.C运算符 算术运算符(语法和java类似或基本一样略过不再描述) 关系运算符(略) 逻辑运算符(略) 位运算符 运算符 描述 实例 & 如果同时存在于两个操作数中,二进制 AND 运算符复 ...
- DevExpress学习系列(控件篇):GridControl的基本应用
一般属性设置 不显示分组框:Gridview->Option View->Show Group Panel=false 单元格不可编辑:gridcontrol -->gridview ...
- Ruby语言学习系列--String 类函数
函数名称 说明 示例 * 将字符串拷贝N次 “ha”*4 >> “hahahaha” + << concat 连接字符串 “yes” + “no” >& ...
- 语言学习系列-Scala连接数据库示例
Scala语法 预装数据库Mysql,登录用户名密码为:root:root,建立数据库test1,建立数据表emp: package com.ccb.day1 import java.sql.Dr ...
- Spark Scala语言学习系列之完成HelloWorld程序(三种方式)
三种方式完成HelloWorld程序 分别采用在REPL,命令行(scala脚本)和Eclipse下运行hello world. 一.Scala REPL. windows下安装好scala后,直接C ...
随机推荐
- (七)mysql 记录长度
MySQL记录长度 MySQL中规定:任何一条记录最长不能超过 65535个字节: 这句话,就表明 varchar 永远也达不到理论值 : varchar 的实际存储长度能达到多少,是需要看具体的字符 ...
- css — 定位、背景图、水平垂直居中
目录 1. 定位 2. 背景图 3. 水平垂直居中 1. 定位 position:static | relative | absolute | fixed; static 静态定位 relative ...
- Zuma CodeForces - 607B (区间DP)
大意: 给定字符串, 每次删除一个回文子串, 求最少多少次删完. #include <iostream> #include <cstdio> #define REP(i,a,n ...
- Python操作Redis(转)
原文1:https://cloud.tencent.com/developer/article/1151834 原文2:https://www.cnblogs.com/zhaohuhu/p/91406 ...
- Java非常好用的反射框架Reflections
MAVEN 坐标 <dependency> <groupId>org.reflections</groupId> <artifactId>reflect ...
- RMAN执行crosscheck archive报错ORA-19633问题处理
一.问题现象 RMAN connect target /; run { crosscheck archivelog all; } ORA-: control file record is out of ...
- Java HeapSort
Java HeapSort /** * <html> * <body> * <P> Copyright 1994-2018 JasonInternational & ...
- c# winfrom 子窗体分屏显示
参考博客:https://blog.csdn.net/kailan818/article/details/8517126 实现代码: private void button1_Click(object ...
- golang包管理工具
软件开发中,不可避免的会使用到第三方库,因此包管理工具可以极大的方便开发者管理第三方依赖,避免掉入"依赖地狱". 作为google强大背书的golang语言,golang官方包管理 ...
- APP漏洞之WebView File域同源策略绕过漏洞
i春秋作家:MAX丶 基本知识Android架构 Kernel内核层 漏洞危害极大,通用性强 驱动由于多而杂,也可能存在不少漏洞 Libaries系统运行库层 系统中间件形式提供的运行库 包括libc ...