日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Qt编写OpenMP程序--HelloWorld

發(fā)布時間:2025/3/20 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt编写OpenMP程序--HelloWorld 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本程序是在Ubuntu Linux環(huán)境下編寫成的。這里包括C++語言程序和C語言程序,兩者在Qt項目設(shè)置參數(shù)上略有不同,需要注意。


OpenMp提供并行描述,可以充分使用計算機系統(tǒng)的CPU資源。


step1.創(chuàng)建Qt的C++項目,項目文件如下:

TEMPLATE = app CONFIG += console c++11 CONFIG -= app_bundle #CONFIG -= qtQMAKE_CXXFLAGS += -fopenmpLIBS += -fopenmpSOURCES += main.cpp其中,需要將行“CONFIG -= qt”注釋。同時添加以下兩行(如上):

QMAKE_CXXFLAGS += -fopenmp
LIBS += -fopenmp

step2.編寫C++源程序如下:

#include <iostream>using namespace std;int main() {#pragma omp parallel forfor (char i = 'a'; i <= 'z'; i++)cout << "Hello World! " << i << endl;return 0; }

程序中,for語句之前添加以下語句,將for循環(huán)并行化處理:
#pragma omp parallel for

step3.運行程序

運行結(jié)果如下(可以看出,由于循環(huán)是并發(fā)運行,所以輸出順序與一般程序不同):

Hello World! a
Hello World! b
Hello World! c
Hello World! d
Hello World! e
Hello World! f
Hello World! g
Hello World! o
Hello World! p
Hello World! q
Hello World! r
Hello World! s
Hello World! t
Hello World! u
Hello World! v
Hello World! w
Hello World! x
Hello World! y
Hello World! z
Hello World! h
Hello World! i
Hello World! j
Hello World! k
Hello World! l
Hello World! m
Hello World! n
運行結(jié)果的截屏如下:



Qt項目與C語言源程序:

1.Qt項目文件

TEMPLATE = app CONFIG += console c++11 CONFIG -= app_bundle #CONFIG -= qtQMAKE_CFLAGS += -fopenmpLIBS += -fopenmpSOURCES += main.c


需要注意的是,這里使用的參數(shù)是QMAKE_CFLAGS(C++項目是QMAKE_CXXFLAGS)。

2.C語言程序

#include <stdio.h>int main(void) {char i;#pragma omp parallel forfor (i='a'; i<='z'; i++)printf("Hello World! %c\n", i);return 0; }





轉(zhuǎn)載于:https://www.cnblogs.com/tigerisland/p/7564282.html

總結(jié)

以上是生活随笔為你收集整理的Qt编写OpenMP程序--HelloWorld的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。