mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-11 22:53:43 +08:00
03.9.md
This commit is contained in:
7
eBook/examples/chapter_3/CandGo/Makefile
Normal file
7
eBook/examples/chapter_3/CandGo/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
include $(GOROOT)/src/Make.inc
|
||||
|
||||
TARG=rand
|
||||
CGOFILES=\
|
||||
c1.go\
|
||||
|
||||
include $(GOROOT)/src/Make.pkg
|
13
eBook/examples/chapter_3/CandGo/c1.go
Normal file
13
eBook/examples/chapter_3/CandGo/c1.go
Normal file
@@ -0,0 +1,13 @@
|
||||
// c1.go
|
||||
package rand
|
||||
|
||||
// #include <stdlib.h>
|
||||
import "C"
|
||||
|
||||
func Random() int {
|
||||
return int(C.random())
|
||||
}
|
||||
|
||||
func Seed(i int) {
|
||||
C.srandom(C.uint(i))
|
||||
}
|
13
eBook/examples/chapter_3/CandGo/c2.go
Normal file
13
eBook/examples/chapter_3/CandGo/c2.go
Normal file
@@ -0,0 +1,13 @@
|
||||
// c2.go
|
||||
package print
|
||||
|
||||
// #include <stdio.h>
|
||||
// #include <stdlib.h>
|
||||
import "C"
|
||||
import "unsafe"
|
||||
|
||||
func Print(s string) {
|
||||
cs := C.CString(s)
|
||||
defer C.free(unsafe.Pointer(cs))
|
||||
C.fputs(cs, (*C.FILE)(C.stdout))
|
||||
}
|
7
eBook/examples/chapter_3/Makefile
Normal file
7
eBook/examples/chapter_3/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
include $(GOROOT)/src/Make.inc
|
||||
TARG=test
|
||||
GOFILES=\
|
||||
test1.go\
|
||||
test2.go\
|
||||
|
||||
include $(GOROOT)/src/Make.cmd
|
9
eBook/examples/chapter_3/gocomp
Normal file
9
eBook/examples/chapter_3/gocomp
Normal file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
FILES=~/goprograms/compiletest/*.go
|
||||
for f in $FILES
|
||||
do
|
||||
echo "Processing $f file..."
|
||||
# take action on each file. $f stores current file name
|
||||
# cat $f
|
||||
6g $f >> compout
|
||||
done
|
2
eBook/examples/chapter_3/gocomp.bat
Normal file
2
eBook/examples/chapter_3/gocomp.bat
Normal file
@@ -0,0 +1,2 @@
|
||||
FOR %%X in (*.go) DO 8g %%X >> compout
|
||||
|
9
eBook/examples/chapter_3/run.cmd
Normal file
9
eBook/examples/chapter_3/run.cmd
Normal file
@@ -0,0 +1,9 @@
|
||||
set GOROOT=E:\Go\GoforWindows\gowin32_release.r59\go
|
||||
set GOBIN=$GOROOT\bin
|
||||
set PATH=%PATH%;$GOBIN
|
||||
set GOARCH=386
|
||||
set GOOS=windows
|
||||
echo off
|
||||
8g %1.go
|
||||
8l -o %1.exe %1.8
|
||||
%1
|
Reference in New Issue
Block a user