
在这个程序中,我们需要使用指针运算来求数组元素的和。
这里我们使用 * 来表示存储在内存地址处的值,并且该地址将保留存储在变量中。因此“int *ptr”表示ptr是一个变量,其中包含一个地址,该地址的内容是一个整数。
本文档主要讲述的是OpenMP并行程序设计;OpenMP是一个编译器指令和库函数的集合,主要是为共享式存储计算机上的并行程序设计使用的。目前支持OpenMP的语言主要有Fortran,C/C++。 OpenMP在并行执行程序时,采用的是fork/join式并行模式,共享存储式并行程序就是使用fork/join式并行的。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
*p表示它是一个指针变量。使用它和 sum() 我们将找出数组元素的总和。
示例代码
#includevoid s(int* a, int len) { int i, s_of_arr = 0; for (i = 0; i < len; i++) s_of_arr = s_of_arr + *(a + i); printf( "sum of array is = %d" ,s_of_arr); } int main() { int arr[] = { 1,2,4,6,7,-5,-3 }; s(arr, 7); return 0; }
输出
Sum of array = 12
算法
Begin Initialize array to hold the variables. Call function s to get the sum of the variables. Print the sum. End.










