重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
一.几种公共方法
10年专注成都网站制作,成都企业网站建设,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于成都企业网站建设,高端网页制作,对成都小搅拌车等多个方面,拥有丰富的网站维护经验。
1)Print: 输出到控制台(不接受任何格式化,它等价于对每一个操作数都应用 %v)
print 在golang中 是属于输出到标准错误流中并打印,官方不建议写程序时候用它。可以再debug时候用
2)Println: 输出到控制台并换行
3)Printf : 只可以打印出格式化的字符串。只可以直接输出字符串类型的变量(不可以输出整形变量和整形等)
4)Sprintf:格式化并返回一个字符串而不带任何输出
5)Fprintf:来格式化并输出到 io.Writers 而不是 os.Stdout
二.带占位符输出--网址:
和python差不多的道理,这里简单补充
v 值的默认格式
%+v 添加字段名(如结构体)
%#v 相应值的Go语法表示
%T 相应值的类型的Go语法表示
%% 字面上的百分号,并非值的占位符
%c 相应Unicode码点所表示的字符
%x 十六进制表示,字母形式为小写 a-f
%X 十六进制表示,字母形式为大写 A-F
%U Unicode格式:U+1234,等同于 "U+%04X"
本文介绍一些Go语言的基础语法。
先来看一个简单的go语言代码:
go语言的注释方法:
代码执行结果:
下面来进一步介绍go的基础语法。
go语言中格式化输出可以使用 fmt 和 log 这两个标准库,
常用方法:
示例代码:
执行结果:
更多格式化方法可以访问中的fmt包。
log包实现了简单的日志服务,也提供了一些格式化输出的方法。
执行结果:
下面来介绍一下go的数据类型
下表列出了go语言的数据类型:
int、float、bool、string、数组和struct属于值类型,这些类型的变量直接指向存在内存中的值;slice、map、chan、pointer等是引用类型,存储的是一个地址,这个地址存储最终的值。
常量是在程序编译时就确定下来的值,程序运行时无法改变。
执行结果:
执行结果:
Go 语言的运算符主要包括算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符以及指针相关运算符。
算术运算符:
关系运算符:
逻辑运算符:
位运算符:
赋值运算符:
指针相关运算符:
下面介绍一下go语言中的if语句和switch语句。另外还有一种控制语句叫select语句,通常与通道联用,这里不做介绍。
if语法格式如下:
if ... else :
else if:
示例代码:
语法格式:
另外,添加 fallthrough 会强制执行后面的 case 语句,不管下一条case语句是否为true。
示例代码:
执行结果:
下面介绍几种循环语句:
执行结果:
执行结果:
也可以通过标记退出循环:
--THE END--
以下代码在VC6.0以上版本测试通过!
输出结果:6
#include stdio.h
int main(void)
{
int a[2][2] = {{1,2}, {3,4}};
int b[2][2] = {{5,6}, {7,8}};
int (*p1)[2] = a;
int (*p2)[2] = b;
int (*q[2])[2] = {p1, p2}; 这样才是正确的定义!
printf("%d\n", *(*q[1]+1));
return 0;
}
但在tc2.0和bc3.1中提示非法初始化!
但把
int (*q[2])[2] = {p1, p2};
改成
int (*q[2])[2];
q[0] = p1;
q[1] = p2;
可以通过!
原因暂不清楚,估计是老旧的编译器不支持太复杂的定义!
其实最好的方法是使用typedef,简单明了,可读性大大提升!
#include stdio.h
int main(void)
{
typedef int (*PA)[2]; 使用typedef
int a[2][2] = {{1,2}, {3,4}};
int b[2][2] = {{5,6}, {7,8}};
int (*p1)[2] = a;
int (*p2)[2] = b;
PA q[2]= {p1, p2}; 这样可读性是否大大的增加?!
printf("%d\n", *(*q[1]+1));
return 0;
}