@@ -1257,6 +1257,12 @@ msgid ""
12571257"result of your function call. This is useful to check for error return "
12581258"values and automatically raise an exception::"
12591259msgstr ""
1260+ "Você também pode usar um objeto Python chamável (uma função ou uma classe, "
1261+ "por exemplo) como o atributo :attr:`~_CFuncPtr.restype`, se a função externa "
1262+ "retornar um inteiro. O objeto chamável será chamado com o *inteiro* que a "
1263+ "função C retorna, e o resultado desta chamada será usado como o resultado da "
1264+ "sua chamada de função. Isso é útil para verificar valores de retorno de erro "
1265+ "e levantar uma exceção automaticamente::"
12601266
12611267#: ../../library/ctypes.rst:551
12621268msgid ""
@@ -1285,6 +1291,10 @@ msgid ""
12851291"exception. ``WinError`` takes an optional error code parameter, if no one is "
12861292"used, it calls :func:`GetLastError` to retrieve it."
12871293msgstr ""
1294+ "``WinError`` é uma função que chamará a API ``FormatMessage()`` do Windows "
1295+ "para obter a representação em string de um código de erro, e *retorna* uma "
1296+ "exceção. ``WinError`` aceita um parâmetro de código de erro opcional, se "
1297+ "nenhum for usado, ela chama :func:`GetLastError` para recuperá-lo."
12881298
12891299#: ../../library/ctypes.rst:573
12901300msgid ""
@@ -1307,6 +1317,10 @@ msgid ""
13071317"large to be passed by value. This is also known as *passing parameters by "
13081318"reference*."
13091319msgstr ""
1320+ "Às vezes, uma função da API C espera um *ponteiro* para um tipo de dado como "
1321+ "parâmetro, provavelmente para escrever no local correspondente, ou se os "
1322+ "dados forem muito grandes para serem passados por valor. Isso também é "
1323+ "conhecido como *passar parâmetros por referência*."
13101324
13111325#: ../../library/ctypes.rst:587
13121326msgid ""
@@ -1316,6 +1330,11 @@ msgid ""
13161330"constructs a real pointer object, so it is faster to use :func:`byref` if "
13171331"you don't need the pointer object in Python itself::"
13181332msgstr ""
1333+ "O :mod:`ctypes` exporta a função :func:`byref` que é usada para passar "
1334+ "parâmetros por referência. O mesmo efeito pode ser alcançado com a função :"
1335+ "func:`pointer`, embora :func:`pointer` faça muito mais trabalho, já que ela "
1336+ "constrói um objeto ponteiro real, então é mais rápido usar :func:`byref` se "
1337+ "você não precisar do objeto ponteiro no próprio Python::"
13191338
13201339#: ../../library/ctypes.rst:593
13211340msgid ""
@@ -1344,19 +1363,29 @@ msgid ""
13441363"_fields_` must be a list of *2-tuples*, containing a *field name* and a "
13451364"*field type*."
13461365msgstr ""
1366+ "Estruturas e uniões devem derivar das classes base :class:`Structure` e :"
1367+ "class:`Union` que são definidas no módulo :mod:`ctypes`. Cada subclasse deve "
1368+ "definir um atributo :attr:`~Structure._fields_`. :attr:`!_fields_` deve ser "
1369+ "uma lista de *2-tuplas*, contendo um *nome de campo* e um *tipo de campo*."
13471370
13481371#: ../../library/ctypes.rst:616
13491372msgid ""
13501373"The field type must be a :mod:`ctypes` type like :class:`c_int`, or any "
13511374"other derived :mod:`ctypes` type: structure, union, array, pointer."
13521375msgstr ""
1376+ "O tipo do campo deve ser um tipo :mod:`ctypes` como :class:`c_int`, ou "
1377+ "qualquer outro tipo :mod:`ctypes` derivado: estrutura, união, vetor, "
1378+ "ponteiro."
13531379
13541380#: ../../library/ctypes.rst:619
13551381msgid ""
13561382"Here is a simple example of a POINT structure, which contains two integers "
13571383"named *x* and *y*, and also shows how to initialize a structure in the "
13581384"constructor::"
13591385msgstr ""
1386+ "Aqui está um exemplo simples de uma estrutura POINT, que contém dois "
1387+ "inteiros nomeados *x* e *y*, e também mostra como inicializar uma estrutura "
1388+ "no construtor::"
13601389
13611390#: ../../library/ctypes.rst:622
13621391msgid ""
@@ -1383,12 +1412,17 @@ msgid ""
13831412"You can, however, build much more complicated structures. A structure can "
13841413"itself contain other structures by using a structure as a field type."
13851414msgstr ""
1415+ "Você pode, no entanto, construir estruturas muito mais complicadas. Uma "
1416+ "estrutura pode conter outras estruturas, usando uma estrutura como um tipo "
1417+ "de campo."
13861418
13871419#: ../../library/ctypes.rst:642
13881420msgid ""
13891421"Here is a RECT structure which contains two POINTs named *upperleft* and "
13901422"*lowerright*::"
13911423msgstr ""
1424+ "Aqui está uma estrutura RECT que contém dois POINTs nomeados *upperleft* e "
1425+ "*lowerright*::"
13921426
13931427#: ../../library/ctypes.rst:645
13941428msgid ""
0 commit comments